任何人都可以解释它是如何回归的" C"并且不报告" b = false"?
中的错误class A {
public static void main(String[] args) {
boolean b;
if (b = false) {System.out.print("A");
} else if (b) {System.out.print("B");
} else if (!b) {System.out.print("C");
} else {System.out.print("D");}
}
}
感谢帮助我
答案 0 :(得分:0)
b = false
将false
分配给b
并返回false
。因此,if (b = false)
条件为false
,if (b)
条件也为false
。
true
的第一个条件是if (!b)
,这导致" C"被打印。
答案 1 :(得分:0)
class A {
public static void main(String[] args) {
boolean b;
if (b = false) {System.out.print("A"); //Assign false to b, gets false
} else if (b) {System.out.print("B"); //b is now false
} else if (!b) {System.out.print("C"); //NOT b is true
} else {System.out.print("D");} //never gets to this block
}
}