# 按位和位移操作符
Java 编程语言还提供对整型类型执行逐位和位移操作的操作符。本节中讨论的运算符较少使用。所以他们的报道很简短;意图是让您意识到这些运算符存在。
一元位补码运算符「~」反转位模式; 它可以应用于任何积分类型,使得「0」为「1」,每「1」为「0」。例如,byte 包含 8 位;将该运算符应用于位模式为「00000000」的值将其模式更改为「11111111」。
<<
带符号的左移位运算符,将位模式向左移位>>
带符号的右移位运算符,将位模式向右移位>>>
无符号右移操作符,将零移到最左边的位置,而最左边的位置>>
取决于符号扩展。
位图由左手操作数给出,位数由右手操作数移位
按位运算 & 符执行按位 AND 运算。
按位运算 ^ 符执行按位 异或 运算。
按位运算 | 符执行按位包含的 或运算。
以下程序 BitDemo 使用按位 AND 运算符将数字「2」打印到标准输出。
class BitDemo {
public static void main(String[] args) {
int bitmask = 0x000F;
int val = 0x2222;
// prints "2"
System.out.println(val & bitmask);
}
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
← 平等、关系和条件运算符 运算符总结 →