java运算符之逻辑运算符
& 逻辑与(两边算子都是true结果才是true)
| 逻辑或(两边算子只要有一个是true,结果就是true)
! 逻辑非(取反,!false=true)
^ 逻辑异或(两边算子只要不一样,结果就是true)
&& 短路与
| | 短路或
短路与和逻辑与,短路或和逻辑或的运算结果相同。
短路与和逻辑与,短路或和逻辑或的区别:
短路与:
逻辑与:
两者的区别在于:
当短路与(&&)在左边的算子(x<y)已经决定了最终的结果(false)时,不会再去执行右边的算子。
而逻辑与(&)无论如何都会将整条语句执行完成。
短路或(| |)和逻辑或(|)同理。因此,&&和| |执行效率更高。