逻辑运算符

逻辑运算符

下表列出了逻辑运算符的基本运算,假设布尔变量 A 为真,变量 B 为假:

操作符 描述 例子
&& 称为逻辑与运算符。当且仅当两个操作数都为真,条件才为真 (A && B)为假
` ` 称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真 (A ` ` B)为真
称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为 true,则逻辑非运算符将得到 false !(A && B)为真

下面的简单示例程序演示了逻辑运算符:

public class Test {
  public static void main(String[] args) {
     boolean a = true;
     boolean b = false;
     System.out.println("a && b = " + (a&&b));
     System.out.println("a || b = " + (a||b) );
     System.out.println("!(a && b) = " + !(a && b));
  }
}

/**
a && b = false
a || b = true
!(a && b) = true
**/

短路逻辑运算符

当使用与逻辑运算符时,在两个操作数都为 true 时,结果才为 true,但是当得到第一个操作为 false 时,其结果就必定是 false,这时候就不会再判断第二个操作了。

public static void main(String[] args){
    int a = 5;//定义一个变量;
    boolean b = (a<4)&&(a++<10);
    System.out.println("使用短路逻辑运算符的结果为"+b);
    System.out.println("a的结果为"+a);
}

/**
使用短路逻辑运算符的结果为false
a的结果为5
**/

该程序使用到了短路逻辑运算符(&&),首先判断 a<4 的结果为 false,则 b 的结果必定是 false,所以不再执行第二个操作 a++<10 的判断,所以 a 的值为 5。

上一页
下一页