'弹出'一个arraylist中的元素。我错过了什么?

时间:2013-03-26 22:59:16

标签: java arraylist

好的输入是一串数字和运算符,例如+ 2 3 * 4.我想将字符串拆分为一个ArrayList对象,字符串中的每个字符都获得它自己的索引。这就是我所拥有的;

String current;
String s = "+ 2 3 * 4";
List <String> splitter = new ArrayList<String>(Arrays.asList(s.split("\\s+")));
current = splitter.remove(0);

if (current == "+"){
   //do stuff }
else if (current = "-") {
   //do stuff } 
....

if语句由于某种原因没有被评估为真,我错过了一些微妙的东西,或者我在这里完全错了吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:8)

if中,您使用==来比较字符串;请改用String#equals

else中,您使用赋值运算符=来比较字符串;请改用String#equals

==运算符比较两个字符串引用,以查看是否引用了同一个对象,这不是您想要的。