在java的逻辑运算符中:&&(短路并),&(并)是有区别的
&&和&都是表示并且,区别是&&只要第一个条件返回true,后面条件就不再判断执行,直接返回,执行短路操作。
而&要对所有的条件都进行判断一次。
同样的 | 和 || 也是一样,两个 | 表示遇到满足的条件就返回,单个 | 也是全部执行一次判断再返回。
看下面的程序:
package com.test;
/**
* @author Administrator
* @date 2018/6/9
*/
public class TestLogic {
private static boolean testA(){
System.out.println("===testA===");
return true;
}
private static boolean testB(){
System.out.println("===testB===");
return false;
}
public static void main(String[] args) {
System.out.println(testA() & testB());
System.out.println(testA() && testB());
System.out.println(testA() | testB());
System.out.println(testA() || testB());
}
}