怎样用Java来做bit的运算?
时间: 2023-02-05 22:05:46 浏览: 54
Java中可以使用下列位运算符进行位运算:
1. & (与运算)
& 运算符用于对两个数进行按位与运算。两个数中只有当两个数都是 1 时结果才是 1,否则结果为 0。
例如:
int a = 12; // 1100
int b = 25; // 11001
int c = a & b; // result is 8, which is 00001000
2. | (或运算)
| 运算符用于对两个数进行按位或运算。两个数中只要有一个数是 1,结果就是 1,否则结果为 0。
例如:
int a = 12; // 1100
int b = 25; // 11001
int c = a | b; // result is 29, which is 11101
3. ^ (异或运算)
^ 运算符用于对两个数进行按位异或运算。两个数中同为 0 或 1 的位的结果为 0,不同的位的结果为 1。
例如:
int a = 12; // 1100
int b = 25; // 11001
int c = a ^ b; // result is 21, which is 10101
4. ~ (取反运算)
~ 运算符用于对一个数进行按位取反运算。它将每一位取反,1 变为 0,0 变为 1。
例如:
int a = 12; // 1100
int b = ~a; // result is -13, which is 11110101
5. << (左移运算)
<< 运算符用于将一个数的各二进制位全部左移若干位,移动后,高位被舍弃,低位则用 0 补齐。
例如:
int a = 12; // 1100
int b = a << 2; // result is 48, which is 110000
6. >> (右