Java 中的布尔值由boolean类型表示,它的值可以是true或false。
Java 支持三种布尔运算符:
!(NOT):对布尔值取反&&(AND):接收两个布尔值,两者都为 true 时结果为 true||(OR):两个布尔值中只要有一个为 true,结果就为 true&&和||运算符使用_短路求值_,也就是说,只有当需要时才会对运算符右侧求值。
它们也被称为条件运算符或逻辑运算符。
文档中有时把!归为位运算,但它具有常规的 NOT 语义。
true || false // => true
false || false // => false
false || true // => true
true && false // => false
true && true // => true
!true // => false
!false // => true
这三种布尔运算符各有不同的运算符优先级。
因此,它们的求值顺序是:先not,再&&,最后||。
如果你想“绕开”这些规则,可以把布尔表达式用括号(())括起来,因为括号的运算符优先级更高。
!true && false // => false
!(true && false) // => true