| 和 ||,& 和 && 的区别
目录
我们将 || 和 && 定义为逻辑运算符,而 | 和 & 定义为位运算符。
&& 如果两个操作数都非零,则条件为真;
|| 如果两个操作数中有任意一个非零,则条件为真。
& 按位与操作,按二进制位进行"与"运算。
| 按位或运算符,按二进制位进行"或"运算
那么,问题来了,在判断语句中,用 | 还是 ||,& 还是 &&?
判断语句中为布尔类型,值只有 true 和 false(如果变量值为 0 就是 false,否则为 true)
|
|
可以看出 & 和 && 在判断语句中都可以实现“和”这个功能,不过区别在于 & 两边都运算,而 && 先算 && 左侧,若左侧为 false 那么右侧就不运算了。因此从效率上来说,判断语句中推荐使用 &&(换句话就是逻辑运算就老老实实用逻辑运算符,不然它为啥叫逻辑运算符呢?)
而 | 和 || 的比较与上类似,不做赘述。
总结:从效率上来说,判断语句中推荐使用 && ||逻辑运算。
参考资料