题目
Boolean flag = false;
if (flag = true)
{
System.out.println("true");
}
else
{
System.out.println("false");
}
关键
(1)
本题理解的关键,boolean的自动装箱和拆箱还在其次,主要是理解表达式的值。
(2)
误区:我做错的原因是因为看到if语句中是一个赋值表达式而不是逻辑表达式。其实if语句中只要是一个逻辑值就可以(无论是一个逻辑值还是一个结果为逻辑值的表达式)。
小结——表达式的值
表达式的值,特别是赋值表达式的值。
赋值表达式的值就是最终赋值给等号=左边的值。
int a = 1;
int b = 2;
System.out.println(a = b++ ); //2
System.out.println(a = ++b ); //3
boolean flag = false;
System.out.println(flag = true ); //true