&和&&的作用和區別


&

  • 邏輯與,& 兩邊的表達式都會進行運算
  • 整數的位運算符

 

&&

  • 短路與,&& 左邊的表達式結果為 false 時,&& 右邊的表達式不參與計算
package constxiong.interview;

/**
 * 測試 & &&
 * @author ConstXiong
 */
public class TestAnd {

    public static void main(String[] args) {
        int x = 10;
        int y = 9;
        if (x == 9 & ++y > 9) {
        }
        System.out.println("x = " + x + ", y = " + y);
        
        int a = 10;
        int b = 9;
        if (a == 9 && ++b > 9) {//a == 9 為 false,所以 ++b 不會運算,b=9
        }
        System.out.println("a = " + a + ", b = " + b);
        
        //00000000000000000000000000000001
        //00000000000000000000000000000010
        //=
        //00000000000000000000000000000000
        System.out.println(1 & 2);//打印0
    }
    
}

 

打印

x = 10, y = 10
a = 10, b = 9
0

 


  

  

來一道刷了進BAT的面試題?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM