1. 程式人生 > >“邏輯和”與 “邏輯或”運算子

“邏輯和”與 “邏輯或”運算子

1.邏輯和運算子有兩種形式:&&與&,二者的不同之處在於,當第一個表示式為假時,&&運算子會短路

 public static void main(String[] args) {
    int x=0;
    if((x!=0)&&(x++>10)){

    }
    System.out.println(x);//x=0,第一個表示式為假,第二個表示式x++就不再發生
  }

而&運算子效果如下

 public static void main(String[] args) {
    int x=0;
    if
((x!=0)&(x++>10)){ } System.out.println(x);//x=1 雖然第一個為假,但是x++依然執行了 }

2.同理邏輯與也有兩種形式:||與|
當第一個表示式為真時,||會造成短路

  public static void main(String[] args) {
    int x=0;
    if((x==0)||(x++>10)){

    }
    System.out.println(x);//x=0,x++沒有執行
  }

而|則不會

 public static void main(String[] args) {
    int
x=0; if((x==0)|(x++>10)){ } System.out.println(x);//x=1,x++執行 }

使用的時候可能忽略了這些細節,僅此記下