逻辑运算符(&,&&,^)

逻辑运算符
&和&&的区别:
单:&时,左边无论真假,右边都进行运算
双:&&时,如如果左边为真,右边参与运算
& 的使用情况:

int a = 3;
int b = 4;
System.out.println((a++ == 3) & (b++ ==5));//输出结果为:false
//执行过此语句后,a = 4,b = 5

此时,a = 4,b = 5
左侧 (a++ == 4) == false
无论左侧真假,右边都会进行运算,所以 b = 5
(false & true) == false
最终会结果为:false
&& 的使用情况:

int a = 3;
int b = 4;
System.out.println((++a == 3) && (b++ == 5));//输出结果为:false
//执行过此语句后,a = 4,b = 4

此时,a = 4,b = 4
当左侧为false时,右侧就不再进行运算
当左侧为true时,右边正常进行运算

^(异或)
不同则真,相同则假
当左右的比较对象结果相同时,最终结果为false
当左右的比较对象结果不同时,最终结果为true
例:
true ^ true == false
false ^ true == true

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页