<<:无符号位移,把二进制数字整体左移指定位数,空位补0。
>>:有符号位移,把二进制数字右移指定位数,空位补符号位的数字。
>>>:无符号位移,把二进制数字整体右移指定位数,空位补0。
位移运算符(代码段执行的结果)
int i=1;
int j=1;
i<<=31;
j<<=31;
System.out.println("i<<=31后的结果为:"+i+"; i<<=31后的结果为:"+j);
i>>=31;
j>>=1;
System.out.println("i>>=31后的结果为:"+i+"; i>>=1后的结果为:"+j);
i>>>=31;
j>>>=1;
System.out.println("i>>>=31后的结果为:"+i+"; i>>>=1后的结果为:"+j);
代码段执行结果:
i<<=31后的结果为:-2147483648; i<<=31后的结果为:-2147483648
i>>=31后的结果为:-1; i>>=1后的结果为:-1073741824
i>>>=31后的结果为:1; i>>>=1后的结果为:1610612736
位移运算符<<
无符号位,把二进制数字整体左移指定位数,空位补0。
int i=1;
int j=1;
String iBi