Java核心技术卷I基础知识(原书第9版)
上QQ阅读APP看书,第一时间看更新

3.5.2 关系运算符与boolean运算符

Java包含各种关系运算符。其中,使用两个等号==检测是否相等。例如,3==7的值为false。

使用!=检测是否不相等。例如,3!=7的值为true。

另外,经常使用的运算符还有<(小于)、>(大于)、<=(小于等于)和>=(大于等于)。

Java沿用了C++的习惯,用&&表示逻辑“与”、用||表示逻辑“或”。从!=运算符很容易看出,!表示逻辑“非”。&&和||是按照“短路”方式求值的。如果第一个操作数已经能够确定表达式的值,第二个操作数就不必计算了。如果用&&对两个表达式进行计算:

并且第一个表达式值为false,结果不可能为真。因此,第二个表达式的值就没有必要计算了。这种方式可以避免一些错误的发生。例如,表达式:

当x为0时,不会计算第二部分。因此,若x为0,1/x不被计算,也不会出现除以0的错误。

与之类似,对于expression1||expression2,当第一个表达式为true时,结果自动为true,不必再计算第二部分。

最后,Java支持三元操作符?:。在很多时候,这个操作符非常有用。表达式

当条件condition为真时计算第1个表达式,否则计算第2个表达式。例如:

返回x和y中较小的那个值。