更新時(shí)間:2024-04-21 14:43:02 來源:動(dòng)力節(jié)點(diǎn) 瀏覽755次
Java中提供了一些位運(yùn)算符,可以對(duì)二進(jìn)制數(shù)的各個(gè)位進(jìn)行操作,具體的位運(yùn)算符及其用法如下:
與運(yùn)算符(&)
如果兩個(gè)二進(jìn)制位都是1,結(jié)果就是1,否則結(jié)果就是0。例如:0b1010 & 0b1100 的結(jié)果是 0b1000。
或運(yùn)算符(|)
如果兩個(gè)二進(jìn)制位都是0,結(jié)果就是0,否則結(jié)果就是1。例如:0b1010 | 0b1100 的結(jié)果是 0b1110。
非運(yùn)算符(~)
將二進(jìn)制數(shù)中的每一位都取反,例如:~0b1010 的結(jié)果是 0b0101。
異或運(yùn)算符(^)
如果兩個(gè)二進(jìn)制位不同,結(jié)果就是1,否則結(jié)果就是0。例如:0b1010 ^ 0b1100 的結(jié)果是 0b0110。
左移運(yùn)算符(<<)
將二進(jìn)制數(shù)向左移動(dòng)指定的位數(shù),低位補(bǔ)0。例如:0b1010 << 2 的結(jié)果是 0b101000。
右移運(yùn)算符(>>)
將二進(jìn)制數(shù)向右移動(dòng)指定的位數(shù),高位補(bǔ)0。例如:0b1010 >> 2 的結(jié)果是 0b10。
無(wú)符號(hào)右移運(yùn)算符(>>>)
將二進(jìn)制數(shù)向右移動(dòng)指定的位數(shù),高位補(bǔ)0。與右移運(yùn)算符的區(qū)別在于,無(wú)論原來的二進(jìn)制數(shù)最高位是0還是1,都用0補(bǔ)充。例如:0b1010 >>> 2 的結(jié)果是 0b10。
位運(yùn)算符可以應(yīng)用在很多場(chǎng)景中,例如可以用來判斷一個(gè)數(shù)的奇偶性,或者用來對(duì)一個(gè)整數(shù)進(jìn)行加密或解密。同時(shí),也要注意位運(yùn)算符可能會(huì)對(duì)代碼的可讀性造成影響,建議在使用位運(yùn)算符時(shí)添加適當(dāng)?shù)淖⑨屢蕴岣叽a可讀性。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743