更新時間:2020-07-14 16:25:16 來源:動力節點 瀏覽3751次
位運算符
位運算符除了按位與和按位或運算以外,其他的只能用于處理整數的操作數。位運算是完全正對位方面的操作。整型數據在內存中以二進制的形式表示,如int型變量7的二進制表示00000000 00000000 00000000 00000111。
左邊最高位是符號位,最高位是0表示整數,若為1則表示負數。負數采用補碼表示,如-8的二進制表示為11111111 11111111 11111111 11111000。這樣就可以對整型數據進行按位運算。
1、“按位與”運算
“按位與”運算符為“&”,為雙目運算符。“按位與”運算的運算法則是:如果兩個整型數據a、b對應為都是1,則結果為才是1,否則為0。如果兩個操作數的精度不同,則結果得的精度與精度高的操作數相同,如下圖所示:
2、“按位或”運算
“按位或”運算的運算符為“|”,為雙目運算符。“按位或”運算的運算法則是:如果兩個操作數對應高位都是0,則結果為才是0,否則為1。如果兩個操作數的精度不同,則結果的精度與精度高的操作數相同,如下圖所示:
3、“按位取反”運算
“按位取反”運算也稱為“按位非”運算,運算符為“~”,為彈幕運算符。“按位取反”就是將操作數二進制中的1修改為0,0修改為1,如下圖所示:
4、“按位異或”運算
“按位異或”運算的運算符是“^”,為雙目運算符。“按位異或”運算的運算法則是:當兩個操作數的二進制表示相同(同時為0或同事為1)時,結果為0,否則為1。若兩個操作數的進度不同,則結果數的精度與精度高的操作數相同,如下圖所示:
5、移位操作
除了上述的運算以外,還可以對數據按二進制為進行移位操作。Java中的移位運算符有以下3中:
1.
2.>>;右移
3.>>>;無符號右移
左移就將左邊的操作數在內存中的二進制數據左移變比阿耨操作數指定的位數,左邊移空的部分補0。右移則復雜一些,當使用“>>”符號時,如果最高位是0,左移空的位就填入0;如果最高位是1,右移空的位就填入1。
Java還提供了無符號右移,“>>>”,無論最高位是0還是1,左側移空的最高位都填入0.
注意:
位移運算符使用的數據類型有byte、short、char、int和long。
技巧:
移位可以實現整數整除移或者乘以2的n次方的效果。例如:y>1的結果與y/2的結果相同。總之,一個數左移n位,就是將這個數乘以2的n次方;一個數右移n位,就是將這個數除以2的n次方。2與y*4的結果相同;y>
Java技術內容
Java運算符概述:http://www.dabaquan.cn/tutorial_java_se/79.html
Java位運算符:http://www.dabaquan.cn/tutorial_java_se/83.html
以上就是動力節點java培訓機構的小編針對“Java位運算符使用方法和技巧”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習