在Java中,左移和右移是位运算操作符,用于对整数进行位移操作。
例如:
int a = 5; // 二进制表示为:00000101
int b = a << 2; // 左移2位,结果为20,二进制表示为:00010100
例如:
int a = 20; // 二进制表示为:00010100
int b = a >> 2; // 右移2位,结果为5,二进制表示为:00000101
值得注意的是,对于正数,右移运算会将空出的位用0填充;而对于负数,右移运算会将空出的位用1填充。这是因为Java使用的是算术右移。如果需要进行逻辑右移,可以使用无符号右移运算符(>>>),它会将空出的位全部填充为0。