Java 语言的比较操作符和逻辑操作符,这些操作符的运算结果都是boolean 型。
“<”、“>”、“<=”、“>=” 操作符的操作元只能是整数类型和浮点数类型。
“==”、“!=” 操作符的操作元既可以是基本类型,也可以是引用类型。
“&&” 和 “&” 均为与操作符,操作元只能是布尔表达式。布尔表达式是指运算结果了boolean 类型的表达式。
“||” 和 “|” 均为与操作符,操作元只能是布尔表达式。
“&&” 和 “||” 是短路(short circuit)操作符,“&” 和 “|” 是非短路操作符。
区别
对于短路操作符,如果能根据左边的布尔表达式就能推算出整个表达式的布尔值,则不执行操作符右边的布尔表达式。
对于非短路操作符,始终会执行操作符两边的布尔表达式。
“!” 是一元操作符,操作元也必须是布尔表达式。当布尔表达式的值为 true 时,运算结果为 false;当布尔表达式的值为 false 时,运算结果为 true。
三元操作符 “?:”
语法形式为:
布尔表达式 ? 表达式1 : 表达式2
操作符“?:” 与 if...else 语句相比,前者使程序代码更加简洁。
操作符“?:” 也是短路操作符,要么执行表达式1,要么执行表达式2。