關於java的位運算

位移動:<<、>>、>>>:

位運算:與(&)、或(|)、非(!)異或(^)

1、<<左移1位表示乘2:

例如5<<2

a、把5轉換成二進制0000 0000 0000 0000 0000 0000 0000 0101

b、把左側高位的兩個0移除,在右側補0得到結果0000 0000 0000 0000 0000 0000 0001 0100

c、轉換爲十進制20

同理:5>>2右移1位表示除2。

總結:左移丟棄最高位,0補最低位;右移符號位不變,左邊補上符號位(正爲0,負爲1)

2、     &:當兩邊操作數的位同時爲1時,結果爲1,否則爲0。如1100&1010=1000  

| :當兩邊操作數的位有一邊爲1時,結果爲1,否則爲0。如1100|1010=1110 

~:0變1,1變0

^:兩邊的位不同時,結果爲1,否則爲0.如1100^1010=0110

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章