java中“|“和“||“以及“&“和“&&“的区别
1.|和||的区别
(1)用法:condition 1 | condition 2、condition 1 || condition 2
(2)逻辑或运算符(|):先判断条件1,不管条件1是否可以决定结果(这里决定结果为true),都会执行条件2
(3)短路或运算符(||):先判断条件1,如果条件1可以决定结果(这里决定结果为true),那么就不会执行条件2
2.&和&&的区别
(1)&运算符有两种用法:①按位与;②逻辑与。
(2)&&运算符是短路与运算。
(3)逻辑与跟短路与的差别是非常巨大的,虽然二者都要求运算符左右两端
的布尔值都是true 整个表达式的值才是 true。&&之所以称为短路运算,是因为如果&&左边的表
达式的值是 false,右边的表达式会被直接短路掉,不会进行运算