簡體   English   中英

Java Integer索引到位的位置

[英]Java Integer index to bit position

我試圖做一個動態的方法來通過二進制和檢查一個數字。 我嘗試了各種不同的方法,但是無法解決這個問題。

我需要的是一種轉換整數索引位置並返回布爾值的方法。

private boolean bitwiseAnding(int val, int indx){
    //TODO Convert indx to a bitmask here
    return (val & bitmask)==1;
}

例如:

1 = 0x01
2 = 0x02
3 = 0x04
4 = 0x08
and so on

您必須使用移位運算符:

private boolean bitwiseAnding(int val, int indx){
    int mask = 1 << (indx-1);
    return (val & mask) != 0;
}

只需使用移位:

int bitmask = 1 << (indx-1);

但請注意,你只為獲得真正的==1 ,如果indx == 1 您可能的意思是:

(val & bitmask) != 0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM