use*_*571 -5 java if-statement
我目前正在阅读OCA Java SE 7程序员I学习指南,我需要帮助理解一个例子.这是代码:
boolean b;
boolean bValue = (b = true);
//Evaluates to true
if(bValue)
System.out.println("TRUE");
else
System.out.println("FALSE");
if (bValue = false)
System.out.println("TRUE");
else
System.out.println("FALSE");
if(bValue == false)
System.out.println("TRUE");
else
System.out.println("FALSE");
Run Code Online (Sandbox Code Playgroud)
我遇到此代码问题的地方是第二个输出.为什么这是假的而不是真的?
是bValue的情况现在是假的,因此不满足if显示"FALSE"的含义吗?
编辑:我知道=和==之间的区别.我不明白的是它不应该打印"TRUE"吗?
提前致谢.