更新時間:2024-04-21 14:43:02 來源:動力節(jié)點 瀏覽684次
Java中提供了一些位運算符,可以對二進制數(shù)的各個位進行操作,具體的位運算符及其用法如下:
與運算符(&)
如果兩個二進制位都是1,結果就是1,否則結果就是0。例如:0b1010 & 0b1100 的結果是 0b1000。
或運算符(|)
如果兩個二進制位都是0,結果就是0,否則結果就是1。例如:0b1010 | 0b1100 的結果是 0b1110。
非運算符(~)
將二進制數(shù)中的每一位都取反,例如:~0b1010 的結果是 0b0101。
異或運算符(^)
如果兩個二進制位不同,結果就是1,否則結果就是0。例如:0b1010 ^ 0b1100 的結果是 0b0110。
左移運算符(<<)
將二進制數(shù)向左移動指定的位數(shù),低位補0。例如:0b1010 << 2 的結果是 0b101000。
右移運算符(>>)
將二進制數(shù)向右移動指定的位數(shù),高位補0。例如:0b1010 >> 2 的結果是 0b10。
無符號右移運算符(>>>)
將二進制數(shù)向右移動指定的位數(shù),高位補0。與右移運算符的區(qū)別在于,無論原來的二進制數(shù)最高位是0還是1,都用0補充。例如:0b1010 >>> 2 的結果是 0b10。
位運算符可以應用在很多場景中,例如可以用來判斷一個數(shù)的奇偶性,或者用來對一個整數(shù)進行加密或解密。同時,也要注意位運算符可能會對代碼的可讀性造成影響,建議在使用位運算符時添加適當?shù)淖⑨屢蕴岣叽a可讀性。
相關閱讀