1. 程式人生 > >java學習之旅-4

java學習之旅-4

個數 相同 參與 進制 amp 與運算 否則 來看 二進制位

位運算符在C裏面並沒有學到,所以算是新知識了,至於用途嘛,我還不太清楚,先來看看吧。

&:

參與運算的兩個數,若相應二進制位數的值都為1,則該結果值是1,否則是0,類似於“與”,例如:

System.out.println(3 & 5);//結果為1
運算過程如下:

   00000011(3)
   00000101(5)    &
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\   
   00000001(1)

|:

參與運算的兩個數相應位中只要有一個為1,則結果就是1,類似於“或”,例如:

System.out.println(3 | 5);//結果為7
運算過程如下:
    00000011(3)
    00000101(5)    |
\\\\\\\\\\\\\\\\\\\\\\\\\\\\    00000111(7)

^:

參與運算的兩個數相應位相同則結果為0,否則結果為1,類似於異或,例如:

System.out.println(3 ^ 5);//結果為6
運算過程如下:
    00000011(3)
    00000101(5)   ^
\\\\\\\\\\\\\\\\\\\\\\\\\\\\    00000110(6)

~:

表示把每個二進制位的‘1’換成‘0’,把‘0’換成‘1’,類似於取反,例如:

System.out.println(~ 5);//結果為-6
運算過程如下:
    00000101(5)   ~
\\\\\\\\\\\\\\\\\\\\\\\\\\\\    11111010(-6)

其實還有‘<<‘,‘>>‘,‘>>>‘三個位運算符,不過難度大一點,所以下次再說吧。

java學習之旅-4