gpt4 book ai didi

java - 为什么这个数组检查不起作用?

转载 作者:行者123 更新时间:2023-12-01 22:18:22 25 4
gpt4 key购买 nike

我正在尝试检查数组中是否有 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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com