天天看點

位運算和位移運算

  1. 按位與&
  2. 按位或|
  3. 按位取反~
  4. 按位異或^
  5. 左移 <<

    a<<b:将二進制形式的a逐位左移b位,最低位空出來的b位用0補齊;

    結果:位移數b作為2的幂次與操作數a相乘。

  6. 帶符号右移 >>

    a>>b:将二進制形式的a逐位右移b位,最高位空出來的b位用符号位補齊

    結果:操作數a除以位移數b的2次幂

  7. 無符号右移 >>>

    a>>>b:将二進制形式的a逐位右移b位,最高位空出來的b位用0補齊

  • 計算16*4最快速的方法

使用位移方法是最快的:System.out.println("16<<2");

  • 交換兩個數的方式

(1)通過第三個變量

(2)a=a+b-(b=a)

  (3)a=a+b;b=a-b;a=a-b;

  (4)速度最快:a=a^b;b=a^b;a=a^b;(a與b必須不同 )

繼續閱讀