java中的“>>”符號是什么意思?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
創新互聯建站10多年企業網站設計服務;為您提供網站建設,網站制作,網頁設計及高端網站定制服務,企業網站設計及推廣,對塔吊租賃等多個領域擁有多年的網站設計經驗的網站建設公司。
在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 0000 0000 0000 0000 1000
3)、轉換為十進制: 8
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創新互聯行業資訊頻道,感謝您對創新互聯的支持。
網站題目:java中的“>>”符號是什么意思
文章轉載:http://m.newbst.com/article16/jeipdg.html
成都網站建設公司_創新互聯,為您提供用戶體驗、微信公眾號、搜索引擎優化、服務器托管、自適應網站、關鍵詞優化
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯