什么是逻辑运算符
逻辑运算符把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否成立,判断的结果是 true 或 false。
逻辑运算符是对布尔型变量进行运算,其结果也是布尔型
- && 与 & 区别:如果 a 为 false,则不计算 b(因为不论 b 为何值,结果都为 false)
- || 与 | 区别:如果 a 为 true,则不计算 b(因为不论 b 为何值,结果都为 true)
注意
短路与(&&)和短路或(||)能够采用最优化的计算方式,从而提高效率。在实际编程时,应该优先考虑使用短路与和短路或。
逻辑运算符的优先级
Java中的各种运算符都有自己的优先级和结合性
!运算级别最高。
&& 运算高于 || 运算。
!运算符的优先级高于算术运算符,而 && 和 || 运算则低于关系运算符。
结合方向是:逻辑非(单目运算符)具有右结合性,逻辑与和逻辑或(双目运算符)具有左结合性。
优先级:在表达式运算中的运算顺序。优先级越高,在表达式中运算顺序越靠前。
结合性:运算的方向,大多数运算符的结合性都是从左向右,即从左向右依次进行运算