1) a&b : &
叫逻辑与:规则:当
a
和
b
同时为
true ,
则结果为
true,
否则为
false
2) a&&b : &&
叫短路与:规则:当
a
和
b
同时为
true ,
则结果为
true,
否则为
false
3) a|b : |
叫逻辑或,规则:当
a
和
b
,有一个为
true ,
则结果为
true,
否则为
false
4) a||b : ||
叫短路或,规则:当
a
和
b
,有一个为
true ,
则结果为
true,
否则为
false
5) !a :
叫取反,或者非运算。当
a
为
true,
则结果为
false,
当
a
为
false
是,结果为
true
6) a^b:
叫逻辑异或,当
a
和
b
不同时,则结果为
true,
否则为
false
③?&& 和 & 基本规则
案例演示(截图截不全所以复制代码了)
/**
*
演示逻辑运算符的使用
*/
public class LogicOperator01 {
//
编写一个
main
方法
public static void main(String[] args) {
//&&
短路与 和
&
案例演示
int age = 50;
if(age > 20 && age < 90) {
System.out.println("ok100");
}
//&
逻辑与使用
if(age > 20 & age < 90) {
System.out.println("ok200");
}
//
区别
int a = 4;
int b = 9;
//
对于
&&
短路与而言,如果第一个条件为
false ,
后面的条件不再判断
//
对于
&
逻辑与而言,如果第一个条件为
false ,
后面的条件仍然会判断
if(a < 1 & ++b < 50) {
System.out.println("ok300");
}
System.out.println("a=" + a + " b=" + b);// 4 10
}
}
④?&& 和 & 使用区别
1) &&短路与:如果第一个条件为 false,则第二个条件不会判断,最终结果为 false,效率高
2) & 逻辑与:不管第一个条件是否为 false,第二个条件都要判断,效率低
3) 开发中, 我们使用的基本是使用短路与&&, 效率高
⑤?|| 和 | 基本规则
⑥?|| 和 | 使用区别
1) ||
短路或:如果第一个条件为
true
,则第二个条件不会判断,最终结果为
true
,效率高
2) |
逻辑或:不管第一个条件是否为
true
,第二个条件都要判断,效率低
3)
开发中,我们基本使用
||
⑦ 最后是 !(取反)和^ (逻辑异或)
取反顾名思义结果取反结果为正确的输出 fasle 错误输出 ture
a^b:
叫逻辑异或,当
a
和
b
不同时,则结果为
true,
否则为
false
二,新名词与小技巧
无
三,今天学习中所遇到的困难
无