& 和 && 区别和联系,| 和 || 区别和联系,实际项目中,什么情况用哪种?
首先,& 和 && 的联系(共同点):
& 和 && 都可以用作 逻辑与 运算符,但是要看使用时的具体条件来决定。
情况1:当上述的操作数是boolean类型变量时,& 和 && 都可以用作逻辑与运算符。
情况2:当上述的表达式是boolean类型变量时,& 和 && 都可以用作逻辑与运算符。
表示逻辑与(and),当运算符两边的表达式的结果或操作数都为true时,整个运算结果才为true,否则,只要有一方为false,结果都为false。
& 和 && 的区别(不同点):
1)& 逻辑运算符称为逻辑与运算符,&& 逻辑运算符称为短路与运算符,也可叫逻辑与运算符。
2)对于 & :无论任何情况,&两边的操作数或表达式都会参与计算。
3)对于 && :当&&左边的操作数为false或左边表达式结果为false时,&&右边的操作数或表达式将不参与计算,此时最终结果都为false。
综上所述,如果逻辑与运算符的第一个操作数为false或第一个表达式的结果为false时,对于第二个操作数或表达式是否进行运算,对最终的结果没有影响,结果肯定是false。推荐多用&&,因为它的效率更高些。
附:&还可以用作位运算符。当&两边操作数或两边的表达式的结果不是boolean类型时,&用于按位运算符的操作。
| 和 || 的区别和联系与 & 和 && 的区别和联系类似。