逻辑运算符:

& 与

&& 短路与

| 或

|| 短路或

!非

& 与


true & false = false


| 或


true | false


&& 短路与 和&的区别

int a = 5;
if(a>6 && a<7){
System.out.println(5);
}

短路与:只要前边有一个表达式的值为false(a>6=false),则后面的表达式就不去执行(不去执行判断a<7)。直接将整个大的表达式a>6 && a< 7 返回为false。

||短路或和|的区别

|会去执行所有的表达式,然后得出总的表达式是true还是false。

||短路或,只要前边有一个true(a>1=true),就不执行/计算后边的表达式了(a<3)。

int a = 5;
if(a>1 || a<3){
System.out.println(5);
}

注意:

写代码的时候,一般常用的是&& 与||

应该这样做比较节省内存,提高效率吧。