java中的“>>”符號是什么意思?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
創(chuàng)新互聯(lián)建站10多年企業(yè)網(wǎng)站設計服務;為您提供網(wǎng)站建設,網(wǎng)站制作,網(wǎng)頁設計及高端網(wǎng)站定制服務,企業(yè)網(wǎng)站設計及推廣,對塔吊租賃等多個領域擁有多年的網(wǎng)站設計經(jīng)驗的網(wǎng)站建設公司。
在java中,>>
是一個“有符號”右移位運算符;它會將運算符左邊的運算對象向右移動運算符右側(cè)指定的位數(shù)。>>
運算符使用了“符號擴展”:若值為正,則在高位插入0;若值為負,則在高位插入1。
1、它的通用格式如下所示:
value >> num
num 指定要移位值value 移動的位數(shù)。
右移的規(guī)則只記住一點:符號位不變,左邊補上符號位
2、運算規(guī)則:
按二進制形式把所有的數(shù)字向右移動對應的位數(shù),低位移出(舍棄),高位的空位補符號位,即正數(shù)補零,負數(shù)補1
當右移的運算數(shù)是byte 和short類型時,將自動把這些類型擴大為 int 型。
例如,如果要移走的值為負數(shù),每一次右移都在左邊補1,如果要移走的值為正數(shù),每一次右移都在左邊補0,這叫做符號位擴展(保留符號位)(sign extension ),在進行右移
操作時用來保持負數(shù)的符號。
3、數(shù)學意義
右移一位相當于除2,右移n位相當于除以2的n次方。
4、計算過程
11 >>2(11為int型)
1)、11的二進制形式為:0000 0000 0000 0000 0000 0000 0000 1011
2)、把低位的最后兩個數(shù)字移出,因為該數(shù)字是正數(shù),所以在高位補零。
3)、最終結(jié)果是0000 0000 0000 0000 0000 0000 0000 0010。
4)、轉(zhuǎn)換為十進制是3。
35 >> 2(35為int型)
1)、35轉(zhuǎn)換為二進制:0000 0000 0000 0000 0000 0000 0010 0011
2)、把低位的最后兩個數(shù)字移出:0000 0000 0000 0000 0000 0000 0000 1000
3)、轉(zhuǎn)換為十進制: 8
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。
網(wǎng)站題目:java中的“>>”符號是什么意思
文章轉(zhuǎn)載:http://chinadenli.net/article16/jeipdg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供用戶體驗、微信公眾號、搜索引擎優(yōu)化、服務器托管、自適應網(wǎng)站、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)