左移位运算示例:

int x = 5; //二进制表示为 00000101
int y = x << 2; //左移两位,得到 00010100,即十进制的20
System.out.println(y); //输出20

右移位运算示例:

int x = 20; //二进制表示为 00010100
int y = x >> 2; //右移两位,得到 00000101,即十进制的5
System.out.println(y); //输出5

需要注意的是,对于带符号右移位运算,如果原数是正数,则在右移位后高位补0,否则在高位补1。而对于无符号右移位运算,则在高位补0。例如:

int x = -5; //二进制表示为 11111011
int y = x >> 2; //带符号右移两位,得到 11111110,即十进制的-2
System.out.println(y); //输出-2

int z = x >>> 2; //无符号右移两位,得到 00111110,即十进制的62
System.out.println(z); //输出62
``
java左右移位运算示例

原文地址: https://www.cveoy.top/t/topic/dnQb 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录