1. 优先级顺序: (重点记忆)
算术运算符 > 关系运算符 > 逻辑运算符
算术运算符: + - 等
关系运算符: > < >= 等
逻辑运算符: && || 等
2.关于逻辑运算符的短路问题
& : 与 | : 或 && : 短路与 || : 短路或
简单介绍一下使用:
& 是运行两边条件,如果有一个结果为false,结果为false
| 是运行两边条件,如果有一个结果为true,结果为true
&& 运算到有结果为false,结果为false
|| 运算到有结果为true,结果为true
我们来看一些代码理解一下
//猜猜下面会输出什么
if(false & (1/0)>0){
System.out.println("执行成功");
}else {
System.out.println("执行不成功");
}
//它会报if(false & (1/0)>0)这一行报错,知道为什么吗?
//因为1不能除以0,小学问题,1怎么除0,肯定报错啊
//我们在来看看
if(false && (1/0)>0){
System.out.println("执行成功");
}else {
System.out.println("执行不成功");
}
//这里结果为执行不成功,因为第一个为false,短路了,不会运算第二行代码了,所以不会运算(1/0)>0,所以将正常输出,是不是很有趣
//或和短路或都是一样的区别