java逻辑运算符||,|,&&,&,!,^

it2025-04-20  3

逻辑运算符功能||(短路或)都为false,则false。有一个为true便不再继续判断了|(逻辑或)都为false,则false。所有的条件都判断&&(短路与)都为true,则true。有一个为false便不再继续判断了&(逻辑与)都为true,则true。所有的条件都判断!(非)变成相反的样子^(异或)相同则为false,不相同则为true

文章目录

1.||和|号2.&&和&号3.^号4.!号

1.||和|号

int a = 10; int b = 4; //短路或 一个成立,后面的不运行了 if (a > 0 || (b++) > 4){ System.out.println("a > 0 | (b++) > 4"); System.out.println(b); //用来判断后面的b++是否被执行 } //逻辑或 所有的都运行 if (a > 0 | (b++) > 4){ System.out.println("a > 0 | (b++) > 4后b的值为:"); System.out.println(b); //用来判断后面的b++是否被执行 }

结果:

可以很明显的看到a>0成立 | 后面的也执行了而||就没有执行

2.&&和&号

int a = 10; int b = 4; //短路与 一个成立,后面的不运行了 if (a > 100 && (b++) <5){ } System.out.println("a < 100 && (b++) <5后b的值为:"); System.out.println(b); //用来判断后面的b++是否被执行 //逻辑与 所有的都运行 if (a > 100 & (b++) <5){ } System.out.println("a < 100 & (b++) <5后b的值为:"); System.out.println(b); //用来判断后面的b++是否被执行

结果:

可以很明显的看到 a>100条件不成立 &后面的也执行了而&&就没有执行

3.^号

Boolean boolean1 = 4 > 5; //false Boolean boolean2 = 4 > 3; //true Boolean boolean3 = boolean1 ^ boolean2; //相同为false,不同为true结果应为true int num1 = 10; // 二进制为:1010 int num2 = 7; //二进制为: 111 System.out.println(boolean3); System.out.println(num1 ^ num2); //相同为0,不相同为1 结果二进制为1101 变成十进制为13

结果:

4.!号

boolean bool = false; System.out.println(!bool); //变为true System.out.println(!!bool); //又变回false

结果:

java中 >>带符号右移 >>>无符号右移 和 <<带符号左移的认识和理解

最新回复(0)