作者jnevil (宛如平凡的落叶)
看板java
标题[问题] 位移
时间Sat May 5 05:10:44 2007
public class work01 {
public static void main(String[] args) {
int a=-1;
int b=-1;
System.out.println(a>>>=31);
System.out.println(b>>=31);
System.out.println();
}
}
我爬文後,关键字"运算",看到了这个
===============================================
>>=这个运算子是代表:位元右移後指定数值给变数
>>>=是代表:位元右移并补零再指定数值给变数
===============================================
但为什麽 a>>>=31 是 1, a>>=31 是 -1
能否有高手能使用二进位表示告诉我,1 和 -1 是怎麽移又怎麽得到的吗 QQ?
被这个问题缠了一整晚 QQ
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.201.15.73