首頁 > Java > java教程 > 主體

java中>>什麼意思?

青灯夜游
發布: 2019-11-19 14:35:53
原創
9406 人瀏覽過

java中>>什麼意思?

java中>>什麼意思?

在java中,是一個「有符號」右移位運算子;它會將運算子左邊的運算物件向右移動運算子右側指定的位數。 運算子使用了「符號擴充」:若值為正,則在高位插入0;若值為負,則在高位插入1。

1、它的通用格式如下:

value >> num
登入後複製

num 指定要移位值value 移動的位數。
右移的規則只記住一點:符號位元不變,左邊補上符號位元

2、運算規則:

以二進位形式把所有的數字向右移動對應的位數,低位移出(捨棄),高位的空位補符號位,即正數補零,負數補1

當右移的運算數是byte 和short類型時,將自動把這些型別擴大為int 型。

例如,如果要移走的值為負數,每一次右移都在左邊補1,如果要移走的值為正數,每一次右移都在左邊補0,這叫做符號位元擴展(保留符號位元)(sign extension ),在進行右移

操作時用來保持負數的符號。

3、數學意義

右移一位相當於除2,右移n位相當於除以2的n次方。

4、計算流程

11 >>2(11为int型)
登入後複製

1)、11的二進位形式為:0000 0000 0000 0000 0000 0000 0000 1011

2)、把低位的最後兩個數字移出,因為數字是正數,所以在高位補零。

3)、最終結果是0000 0000 0000 0000 0000 0000 0000 0010。

4)、轉換為十進位是3。

35 >> 2(35为int型)
登入後複製

1)、35轉換為二進位:0000 0000 0000 0000 0000 0000 0010 0011

#2)、把低位的最後兩個數字移出:0000 0000 0000

##3)、轉換為十進位: 8

推薦教學:

Java教學

以上是java中>>什麼意思?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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