右移运算符>>>和>>有甚么区别啊
谢谢! >>> 右移,高位补零; >> 右移,高位补和原符号为相同的数。对于正数没差别
例
int a = 0xC0001010;
System.out.println(a + " : " + (a >> 2) + " : " + (a >>> 2));
为什么
int d=-256;
d=d>>>2;
可是 d=1073741760; 原帖由 declare 于 2006-1-3 15:52 发表
为什么
int d=-256;
d=d>>>2;
可是 d=1073741760;
>>> 右移,高位补零
"右移,高位补零" 是得不到d=1073741760;
难道用了补码? -256 = 0XFFFFFF00;
-256>>> 2 = 0XFFFFFF00 >>> 2 = 0X3FFFFFC0 = 1073741760 :sleepy::sleepy:
页:
[1]