我正在尝试检查数组中是否有 1 或 3,如果找到其中一个,则打印 false,否则打印 true。我有这个:
if(array[i] == 1){
bool = false;
}
else if(array[i] == 3){
bool = false;
}
else{
bool = true;
}
但是,它并非在所有情况下都有效。
如果输入是0 2 4
,它会按预期打印 true。
但是如果输入是 4 2 7 1 8
它应该是 false,因为有一个 1,但它打印 true。
我做错了什么?
编辑:向 if 添加了一个中断并更改了 if 语句。现在可以工作了。
if(array[i] == 1 || array[i] == 3){
bool = false;
break;
}
else{
bool = true;
}
最佳答案
更好的方法是
boolean flag = true;
for(int i=0; i<myArray.length; i++)
{
if(myArray[i]==1 || myArray[i]==3){
flag = false;
break;
}
}
return flag;
关于java - 为什么这个数组检查不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30495376/