下面的代码我接受两个数组并比较它们。当两者相同时,我会显示正确的消息,但如果错误,则两条消息都会显示。显示最后一个 if 语句 System.out.println("identical"); 似乎总是显示,即使 boolean 值为 false。这是为什么????
public static void compareArrays(int[] a, int[] n){
boolean b = false;
for (int i = 0; i < n.length; i++) {
if (n[i] == a[i]) {
b = true;
} else {
b = false;
System.out.println("different");
break;
}
}
if (b = true){
System.out.println("identical");
}
}
最佳答案
更改此:
if (b = true){
System.out.println("identical");
}
至:
if (b == true){
System.out.println("identical");
}
或更好
if (b){
System.out.println("identical");
}
您正在分配一个值而不是进行比较。
关于java - boolean 语句不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14899912/