boolean rhs;
rhs = value == null;
具体来说,我不明白的部分是 = 运算符后跟值,然后是 ==。这意味着什么?
由于比较==
具有比分配更高的优先级,因此代码=
rhs = value == null;
是相同的
rhs = (value == null);
因此它将检查是否value
是null
并将该测试的结果存储在rhs
.
value == null
是一个布尔表达式,计算结果为true
if value == null
,否则为false
。这个表达式的值被赋值给rhs
这2个语句相当于
boolean rhs;
if (value == null)
rhs = true;
else
rhs false;
它将评估结果分配给布尔变量:rhs
value == null
这是检查是否存在的简单value
方法null
。如果null
then is 将分配true
给rhs
, else false
。您可以使用以下代码自行尝试:
String value = null;
String value2 = "Testing";
boolean rhs;
System.out.println(rhs=value == null); //print true
System.out.println(rhs);
System.out.println(rhs=value2 == null);//print false
System.out.println(rhs);