首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Java 位運算符詳解:左移右移規律、與或異或真值表與加密應用示例

     編輯:Java 綜合教學

Java 位運算符詳解

位運算直接對二進制位操作,效率極高,常用於底層優化、權限掩碼、簡單加密。

移位運算

  • 左移 <<:x << n 等價 x * 2^n,低位補 0。
  • 右移 >>:x >> n 等價 x / 2^n (算術右移,保留符號位)。
  • 無符號右移 >>>:高位補 0,無符號除法。
System.out.println(6 << 3); // 48  (6 * 8)
System.out.println(6 >> 3); // 0   (6 / 8 = 0)

邏輯位運算

對齊兩數二進制位逐位運算:

運算子名稱規則範例 6 (110) & 3 (011)
&與 (AND)同為 1 則 1010 = 2
|或 (OR)有 1 則 1111 = 7
^異或 (XOR)相異為 1101 = 5
System.out.println(6 & 3); // 2
System.out.println(6 | 3); // 7
System.out.println(6 ^ 3); // 5

應用:簡單加密 (XOR)

public static String xorEncrypt(String data, char key) {
    char[] chars = data.toCharArray();
    for (int i = 0; i < chars.length; i++) chars[i] ^= key;
    return new String(chars);
}
// 加密與解密同一方法:xorEncrypt(xorEncrypt(plain, key), key) == plain

完整測試類別

public class VariableDemo {
    public static void main(String[] args) {
        System.out.println(6 << 3); // 48
        System.out.println(6 >> 3); // 0
        System.out.println(6 & 3);  // 2
        System.out.println(6 | 3);  // 7
        System.out.println(6 ^ 3);  // 5
    }
}
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved