我必須編寫一個方法,它接受一個整數作爲參數(0,1,2或3)。我必須使用它來創建一個0的位掩碼。因此,如果參數爲0,則位掩碼將爲FFF0
,對於1:FF0F
,2:F0FF
,3:0FFF
。我試圖不去硬編碼它。使用單個數字移位4位
我都試過了,但它僅適用部分:
int bob = 0xFFFF;
int multi = 2;
multi = multi << param;
這個作品用1和2,對於即使是那些,它使0xFF00
和0xF000
。
我試圖不使用乘法(這會使它更容易,所以我不想使用它)。
刪除所有提及的「java」可能實際上並不是一個好主意......讓我不確定它是如何處理負數的(例如,如果'int'意味着一個16,manu-fatto的回答將不起作用(0xFFFF)等於-1) – Jeff