Java中的位元運算子:
>>:表示右移,如果該數為正,則高位補0,若為負數,則高位補1;
>>>:表示無符號右移,也叫邏輯右移,即若該數為正,則高位補0,而若該數為負數,則右移後高位同樣補0。
表達式為:
result = exp1 >> exp2; result = exp2 >>> exp2;
表示把數exp1往右移動exp2位元。
例如:
res = 20 >> 2;
20的二進位為0001 0100,右移2位後為0000 0101,則結果就為res = 5;
res = -20 >> 2;
-20的二進位為其正數的補碼加1,即1110 1011,右移2位後為1111 1100,結果為res = -6;
而對於>>>符號而言:
res = 20 >>> 2;
結果與>> 相同;
res = -20 >> 2;
-20的二進位為1110 1011,右移2位,此時高位補0,即0011 1010,結果為res = 58;
補充:
<< 是與>>對應的左移運算符,表示將exp1向左移動exp2位,在低位補0。其實,向左移動n位,就相當於乘以2^n。
左移沒有<<<運算子!
推薦教學:Java教學
以上是java中>>>和>>的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!