作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
public class MyClass {
public static void main(String args[]) {
int[] nums = {1, 2, 9, 3, 4};
boolean results = false;
int end = nums.length;
if (end>4)end=4;
for (int x=0;x<end;x++)
{
System.out.println(nums[x]);
results = (nums[x] == 9);
}
System.out.println(results);
}
}
以下代码检查数组的前 4 个元素中是否存在 9,但如果前 4 个元素中的“9”不超过 1 个,以这种方式使用 boolean 运算符似乎总是失败数组的。
这是为什么?从逻辑上讲,这似乎应该可行,而且当我理解为什么有些东西不起作用时,它确实有助于我更好地理解。
最佳答案
原因是你迭代了所有元素,结果将是最后一个元素的结果,
所以需要在找到匹配结果的时候停止for
for (int x=0;x<end;x++)
{
System.out.println(nums[x]);
if(nums[x] == 9){
result = true;
break;
}
}
关于java - boolean 赋值不抓,需要多了解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51066205/
我是一名优秀的程序员,十分优秀!