Java基础语法11-逻辑运算符的使用
a | b | a&b | a&&b | a|b | a||b | !a | a^b |
---|---|---|---|---|---|---|---|
true | true | true | true | true | true | false | false |
true | false | false | false | true | true | false | true |
false | true | false | false | true | true | true | true |
false | false | false | false | false | false | true | false |
逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3 & x<6 。
“&”和“&&”的区别:
单&时,左边无论真假,右边都进行运算;
双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
“|”和“||”的区别同理,||表示:当左边为真,右边不参与运算。
异或( ^ )与或( | )的不同之处是:当左右都为true时,结果为false。理解:异或,追求的是“异”!
//区分“&”和“&&”
//开发中推荐使用“&&”
Boolean b1 = flase;
int num1 = 2;
if (b1 & (num1++ > 1)){
System.out.printLn("this is A");
}else{
System.out.printLn("this is B");
}
System.out.printLn("num1 = " + num1);//num1 = 3
Boolean b2 = flase;
int num2 = 2;
if (b2 && (num2++ > 1)){
System.out.printLn("this is A");
}else{
System.out.printLn("this is B");
}
System.out.printLn("num2 = " + num1);//num2 = 2