Java中的逻辑运算符如下表所示:
序号 | 运算符 | 含义 |
---|---|---|
1 | & | 与 |
2 | && | 短路与 |
3 | | | 或 |
4 | || | 短路或 |
与和或的逻辑运算与其他编程语言都一样,主要介绍“短路与(&&)”和“与(&)”的区别:
- 对于“与”来说,前后所有的条件都要判断,而对于“短路与”,当第一个条件为false时,后面的条件不再判断,直接返回false。
举个例子:
if(10 !=10 & 10/0 == 0){
System.out.println("条件满足");
}else{
System.out.println("条件不满足");
}
测试以上代码,代码会报错,提示第二个条件中被除数不能为0。将以上代码修改为:
if(10 !=10 && 10/0 == 0){
System.out.println("条件满足");
}else{
System.out.println("条件不满足");
}
此时程序就不会报错,而是正常返回“条件不满足”,因为第一个条件为false,程序不会再去判断第二个条件。