/** * bitmaps位圖和 mask掩碼 */ public class BitmapsAndMask { final int BIT5 = (1<<5); final int BIT7 = 0x80; final int BITS2AND3 = 12; //8+4 int bitmap = 1234567; public void operate() { //要設置int變量中的特定一位,需將該int值與特定位對應的掩碼進行按位或操作 bitmap |= BIT5; //要清空特定一位,則將該整數與特定所對應的掩碼的按位補碼(特定位爲0,其他位爲1)進行按位與操作 bitmap &= ~BIT7; //也可以通過將相應的所有掩碼進行按位或操作,一次設置和清空多位: //clear bits 2,3 and 5 bitmap &= ~(BITS2AND3 | BIT5); //要測試一個整數的特定位是否已被設置,可將該整數與特定位對應的掩碼進行按位與,然後與0進行比較 boolean bit6Set = (bitmap & (1<<6)) != 0; } }
bitmaps位圖和mask掩碼常用操作
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.