java 基础、自学记录。避免遗忘;
逻辑与:&&和&,逻辑或:||和|,逻辑非:!。
&&和&区别?||和|区别?
&&和||具有短路效果。也就是说在执行过程中,前面的表达式满足条件后就会停止本条语句执行。&和|则不具备短路效果。
直接上实例:
/**
* 逻辑运算符测试
*/
public class OperatTest {
public static void main(String[] args) {
int a = 1;
String b = "a";
if (a == 2 && a == Integer.parseInt(b)) { // &&具有短路效果,第一个表达式不满足条件直接跳出判断
System.out.println("这里没有短路");
} else {
System.out.println("这里短路了");
}
System.out.println("第一个判断完成*******************");
if (a == 2 & a == Integer.parseInt(b)) { // &不具短路效果,第一个表达式不满足条件后还会执行第二个表达式,导致异常
System.out.println("这里没有短路");
} else {
System.out.println("这里短路了");
}
}
}
执行结果
逻辑或:||和逻辑与:&&都具有短路效果。&和|不具短路效果。
逻辑与只要有一个为false, 则直接返回false.
逻辑或只要有一个为true, 则直接返回true;
逻辑非:!,反义的意思。
public static void main(String[] args) {
boolean falg = false;
if (!falg)
System.out.println("true");
else
System.out.println("false");
}
结果:true
逻辑运算先记录到这里。