JAVA逻辑运算符&和&&、|和||的区别(第6节)

逻辑运算符包括以下:

& 与运算符

&& 与运算符(可短路)

| 或运算符

|| 或运算符(可短路)

! 非运算符
^ 异或运算符

 

着重记录下&和&&、|和||的区别

&&左侧的表达式为false时,不会再执行右侧的表达式(即右侧的表达式被短路),但是&会一直执行左右两边的表达式

||左侧的表达式为true时,不会再执行右侧的表达式(即右侧的表达式被短路),但是|会一直执行左右两边的表达式

 

int x = 2;
System.out.println((5<7) & (x++==2));// true
System.out.println(x);// 3

int y = 2;
System.out.println((5<7) & (++y==2));// false
System.out.println(y);// 3

x = 2;
System.out.println((5>7) && (x++==2));// false
System.out.println(x);// 2

y = 2;
System.out.println((5>7) && (++y==2));// false
System.out.println(y);// 2

 

posted @ 2021-12-29 19:23  风铃如沧海  阅读(191)  评论(0编辑  收藏  举报