首頁 > Java > Java基礎 > java中>>>和>>的區別

java中>>>和>>的區別

王林
發布: 2019-11-18 10:44:32
原創
3218 人瀏覽過

java中>>>和>>的區別

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中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板