0

我在字符串数组“平衡数组”中有这个输入“4+4-(4+4+(4+4)))”

我正在尝试执行此代码:

String expression = "";
for(int j=2 ; j<balance.length-1 ; j++)
{
     if(!(balance[j].equals("+")) || !(balance[j].equals("-")) || !(balance[j].equals("(")) || !(balance[j].equals(")")))
          expression = expression + balance[j];
}

在代码的末尾,表达式应该包含“444444”,但它不起作用。

我在使用 !.equals 和 || 以错误的方式做事?

我想使用 || 将这 4 个语句组合在一起 它们之间。

4

2 回答 2

7

将所有更改||&&

     if (!balance[j].equals("+") && !balance[j].equals("-") &&
         !balance[j].equals("(") && !balance[j].equals(")"))

此外,循环的起始值j和循环的终止条件看起来都不确定。

于 2012-12-10T22:42:40.097 回答
0

采用

if(!((balance[j].equals("+")) || (balance[j].equals("-")) || (balance[j].equals("(")) || (balance[j].equals(")"))))

for(int j=0 ; j<=balance.length-1 ; j++)
于 2012-12-10T22:43:33.887 回答