譯:位運算及移位運算

The Java? Tutorials : Bitwise and Bit Shift Operators

Java語言提供了對整數(shù)類型(bit、short、int、long)進行位運算及移位運算的操作。這些操作并不常用,所以他們的作用很簡單。本文的目的只是讓你意識到這些操作的存在。

一元按位求補操作符 ~ 反轉(zhuǎn)每一個比特位。這個操作符可以應用到任何整數(shù)類型,把每一個“0”變成“1”,“1”變成“0”。例如:一個 byte 包含8個比特,每個比特位分別是“00000000”,對這個 byte 進行~操作每個比特位將變成“11111111”。

帶符號的左移操作符 << 向左移動一個比特,帶符號的右移操作符 >> 向右移動一個比特。比特位由左操作數(shù)給出,移動幾個比特位由右操作數(shù)給出。不帶符號的右移操作符 >>> 將 “0” 移入最左邊,而帶符號的右移操作符 >> 則取決于符號位。

按位操作 & 實現(xiàn)按位與。
按位操作 ^ 實現(xiàn)按位異或。
按位操作 | 實現(xiàn)按位或。

下面的程序 BitDemo 使用按位與操作將數(shù)字“2”輸出到標準輸出。

class BitDemo {
    public static void main(String[] args) {
        int bitmask = 0x000F;
        int val = 0x2222;
        // prints "2"
        System.out.println(val & bitmask);
    }
}
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容