java運(yùn)算符能進(jìn)行位運(yùn)算嗎

小樊
81
2024-11-16 07:10:30
欄目: 編程語言

是的,Java中的運(yùn)算符可以進(jìn)行位運(yùn)算。Java支持以下位運(yùn)算符:

  1. 按位與(&):對(duì)應(yīng)位都為1時(shí)結(jié)果為1,否則為0。
  2. 按位或(|):對(duì)應(yīng)位有一個(gè)為1時(shí)結(jié)果為1,否則為0。
  3. 按位異或(^):對(duì)應(yīng)位不同時(shí)結(jié)果為1,相同時(shí)為0。
  4. 按位取反(~):將每一位二進(jìn)制數(shù)值取反,0變?yōu)?,1變?yōu)?。
  5. 左移(<<):將二進(jìn)制數(shù)值向左移動(dòng)指定的位數(shù),右側(cè)用0填充。
  6. 右移(>>):將二進(jìn)制數(shù)值向右移動(dòng)指定的位數(shù),左側(cè)用符號(hào)位填充。
  7. 無符號(hào)右移(>>>):將二進(jìn)制數(shù)值向右移動(dòng)指定的位數(shù),左側(cè)用0填充。

以下是一些使用位運(yùn)算符的Java示例:

public class BitwiseOperations {
    public static void main(String[] args) {
        int a = 5; // 二進(jìn)制表示為 0101
        int b = 3; // 二進(jìn)制表示為 0011

        System.out.println("按位與: " + (a & b)); // 輸出 1 (二進(jìn)制表示為 0001)
        System.out.println("按位或: " + (a | b)); // 輸出 7 (二進(jìn)制表示為 0111)
        System.out.println("按位異或: " + (a ^ b)); // 輸出 6 (二進(jìn)制表示為 0110)
        System.out.println("按位取反: " + (~a)); // 輸出 -6 (二進(jìn)制表示為 1110)
        System.out.println("左移: " + (a << 2)); // 輸出 20 (二進(jìn)制表示為 10100)
        System.out.println("右移: " + (a >> 2)); // 輸出 1 (二進(jìn)制表示為 0001)
        System.out.println("無符號(hào)右移: " + (a >>> 2)); // 輸出 14 (二進(jìn)制表示為 00001110)
    }
}

0