Java中,&和&&,|和||有什么区别

如题所述

& 是与,&&是短路与;

&& 是左边条件不满足就终止了,不会继续计算右边条件;而&是无论左边是否满足都会继续执行右边。

比如 a && b , 假如计算 a 是假 , 那么就不会继续计算b的真假值了;假如a是真,那么会继续计算b,当b也是真时,a&&b为真。

而 a & b , 无论a是真假,都会继续计算b的真假值


| 是或,|| 是短路或;

原理跟上面差不多,a || b 只要 a为真时,那么整个表达式就是真了,不会继续计算b的真假值;

而 a | b , 无论a真假,都会继续计算b的值。

一般用 && 和 || 的较多。

另外, & 和 | 还用于位运算中,有兴趣请自行百度

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-04-24
&&和||是逻辑比较 与和或
与就是两者皆为真则为真 否则为假
或则是只要有一者为真即为真 否则为假

而&和|则是位运算
注意 一个是比较 一个是运算
&和|将两个操作数按位进行运算 得到的是一个运算结果 是一个数
所谓的按位运算就是将两个操作数转换成2进制然后一位一位的进行比较运算

而&&和||将两个逻辑表达式进行比较 得到的是一个布尔值

这是有概念上的区别的本回答被网友采纳
相似回答