ahm*_*l88 -1 java eclipse if-statement boolean
当我尝试遵循java代码时
将false
值赋值给我的布尔变量b
并在同一语句上使用if条件
有来自eclipse IDE的消息
提示我"The local variable b is never read"
boolean b = false;
if (b = false) { // boolean assignment & usage on one statement
System.out.println("true");
}else {
System.out.println("false");
}
Run Code Online (Sandbox Code Playgroud)
尽管我使用我的变量,但请说明为什么会出现此消息?
注意:如果条件是b==false
该消息将不会显示
将false值赋给我的布尔变量b,并在if条件下使用它
第一部分是正确的:您为一个值赋值b
.第二部分不是:你永远不会b
在那里使用.您使用赋值的结果,这是值false
,而不是任何与之相关的结果b
.
这将分配然后使用 b
:
b = false;
if (b) {
Run Code Online (Sandbox Code Playgroud)
但是这个:
if (b = false)
Run Code Online (Sandbox Code Playgroud)
只是一个赋值b
,然后使用该值false
.
所以错误是正确的:b
分配了一个值,它的值永远不会被使用.