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);
}
}
Run Code Online (Sandbox Code Playgroud)
下面的代码检查数组的前4个元素中是否存在9,但是如果在数组的前4个元素中不超过1"9",则以这种方式使用布尔运算符似乎总是失败.
为什么是这样?从逻辑上看,这似乎应该有效,当我理解为什么某些东西不起作用时,它真的有助于我更好地理解.
原因是你有所有元素,结果将是最后一个元素的结果,
所以你需要for
在找到匹配结果时停止
for (int x=0;x<end;x++)
{
System.out.println(nums[x]);
if(nums[x] == 9){
result = true;
break;
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
57 次 |
最近记录: |