gpt4 book ai didi

java - if 语句中 boolean 值的使用

转载 作者:行者123 更新时间:2023-12-01 07:47:49 24 4
gpt4 key购买 nike

public static int search(int[] a, int target)
{
int i=0;
boolean found = false;
while((i<a.length) && ! found)
{
if (a[i] == target)
{
found = true;
}
else i++;
}
if (found) return i;
else return -1;
}

我不明白 if 语句部分。所以我在脑海中阅读它的方式被发现被设置为 false。如果没有找到...所以如果不是假(因为找到=假),就做任何事情。所以基本上我把它理解为双重否定,看看是否(正确)是无论如何。但这没有意义。我知道它不是无限循环并且运行良好,但我不明白逻辑,它一定不是双重否定。谢谢!

编辑:所以我知道我们可以直接返回,更容易,是的,我同意。我只是在循环中使用 boolean 值的逻辑时遇到问题,而不是“!”符号。

基本上,如果我写了这个,我会说(忽略其他一切)

found = true//found 为 truewhile (!found)//虽然不正确继续到下一个索引//继​​续直到....实际上我现在很困惑,因为要打破循环,我们将继续直到找到为假,这在逻辑上是向后的

编辑:谢谢大家的评论!这一切都帮助我理解了它!

最佳答案

public static int search(int[] a, int target)
{
for (int i = 0; i < a.length; i++){
if (a[i] == target) return a[i]; // or i if you want to get ingex of searched element
}
return -1;
}

关于java - if 语句中 boolean 值的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47114795/

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