📜  Java中的按位运算符(1)

📅  最后修改于: 2023-12-03 15:02:02.218000             🧑  作者: Mango

Java中的按位运算符

在Java中,按位运算符是一组用来在二进制级别上操作整数的运算符。按位运算符一般用于位操作,例如掩码、加密等应用程序。

按位运算符列表

Java中的按位运算符包括以下几种:

  • & 按位与:如果两个相应的二进制位都为1,则该位的结果值为1,否则为0。

  • | 按位或:如果两个相应的二进制位中有一个为1,则该位的结果值为1,否则为0。

  • ^ 按位异或:如果两个相应的二进制位值不同,则该位的结果为1,否则为0。

  • ~ 按位取反:按位取反运算符是一元运算符,用于将每个二进制位从0变成1,或者从1变成0。

  • << 左移运算符:将目标值向左移动指定的位数,并以0填充右侧的位数。

  • >> 右移运算符:将目标值向右移动指定的位数,并以符号位填充左侧的位数。

  • >>> 无符号右移运算符:将目标值向右移动指定的位数,并以0填充左侧的位数。忽略符号位。

按位运算符示例

以下示例演示了按位运算符的使用:

int a = 5; // 二进制为 0000 0101
int b = 9; // 二进制为 0000 1001

// 按位与
int c = a & b; // 0000 0001 (结果为1)

// 按位或
int d = a | b; // 0000 1101 (结果为13)

// 按位异或
int e = a ^ b; // 0000 1100 (结果为12)

// 按位取反
int f = ~a; // 1111 1010 (结果为-6)

// 左移运算符
int g = a << 2; // 0001 0100 (结果为20)

// 右移运算符
int h = b >> 2; // 0000 0010 (结果为2)

// 无符号右移运算符
int i = b >>> 2; // 0000 0010 (结果为2)
总结

按位运算符是一组用于在二进制级别上操作整数的运算符。了解和使用Java中的按位运算符可以帮助程序员更好地理解位操作和掩码等应用程序。