>>> 在java 表示有符号右移。什么意思呢?就是最高位符号位也会移动。
我们知道,>>表示有符号右移。
-1>> 1 = -1
-1>>2 = -1 还等于-1 右移多少位都是-1
>>>
-1 >>>1 = 2147483647
-1>>>2 = 1073741823
总结:
>>> 表示符号位也会跟着移动,比如 -1 的最高位是1,表示是个负数,然后右移之后,最高位就是0表示当前是个正数。
所以 -1 >>>1 = 2147483647
>> 表示无符号右移,也就是符号位不变。那么-1 无论移动多少次都是-1