日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java培训教程:Java中的位移运算符!

發布時間:2024/9/30 java 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java培训教程:Java中的位移运算符! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學習Java本來就是一件日積月累的事情,或許你通過自學能掌握一些皮毛技術,通過系統學習學到Java的一些基本大面,但想要做到精通,還是需要自己技術的日積月累和工作經驗的不斷積累。

今天小千給大家分享的技術知識是:java中的位移運算符!

1) “有符號”左移位運算符(<<)能將運算符左邊的運算對象向左移動運算符右側指定的位數(在低位補0)。

左移移位相當于乘以2,例如

3 << 2 //12 則是將數字3左移2位 322 = 3*(2的2次方)

分析:首先把3轉換為二進制數字0000 0000 0000 0000 0000 0000 0000 0011,然后把該數字高位(左側)的兩個零移出,其他的數字都朝左平移2位,最后在低位(右側)的兩個空位補零。則得到的最終結果是0000 0000 0000 0000 0000 0000 0000 1100,則轉換為十進制是12.數學意義:

在數字沒有溢出的前提下,對于正數和負數,左移一位都相當于乘以2的1次方,左移n位就相當于乘以2的n次方。

2) “有符號”右移位運算符(>>)則將運算符左邊的運算對象向右移動運算符右側指定的位數。 “有符號”右移位運算符使用了“符號擴展”:若值為正,則在高位插入0;若值為負,則在高位插入1。

>>運算規則:按二進制形式把所有的數字向右移動對應位數,低位移出(舍棄),高位的空位補符號位,移位后得到的數字為正數則補0,負數補1。

例如11 >> 2,則是將數字11右移2位

分析:11的二進制形式為:0000 0000 0000 0000 0000 0000 0000 1011,然后把低位的最后兩個數字移出,因為該數字是正數,所以在高位補零。則得到的最終結果是0000 0000 0000 0000 0000 0000 0000 0010.轉換為十進制是3.數學意義:右移一位相當于除2,右移n位相當于除以2的n次方。

3) Java也添加了一種“無符號”右移位運算符(>>>),它使用了“零擴展”:無論正負,都在高位插入0

4)右移一位相當于除以2,左移一位(在不溢出的情況下)相當于乘以2;移位運算速度高于乘除運算。

5)位運算符的優先級

~的優先級最高,其次是<<、>>和>>>,再次是&,然后是^,優先級最低的是|。

本文來自千鋒教育,轉載請注明出處。

總結

以上是生活随笔為你收集整理的Java培训教程:Java中的位移运算符!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。