私は過去数日からこのことを探していて、「BitSet メソッド」を使用する最も推奨される解決策に出会いました。私はビットのインデックスを設定するために同じことを試み、getメソッドを使用して表示しました。
これが私のコードです:
int value = (myMap.get(key)); // value could be anything from 0-255
if (items.contains(key)) {
BitSet bitSet1 = new BitSet(256);
bitSet1.set(value);
System.out.print(bitSet1);
for (int i5 = 1; i5 < bitSet1.size(); i5++) {
boolean bit = bitSet1.get(i5);
System.out.print(bit?1:0);
}
}
問題は次のとおりです。ユーザーの操作によって、0 ~ 255 の任意の値が存在する可能性があります。たとえば、40,85,93 です。
ブール配列にそれぞれのビット インデックスを設定したい。上記のコードは、ビットのそれぞれのインデックスを「1」に設定しますが、インデックスが 1 より大きい場合、同じ数のブール配列がそれぞれのビットで出力されます。
同じブール配列でビットのインデックスを「1」に出力したい(「値」の整数インデックスに従って)。
arraylist、int[] なども試してみましたが、うまくいきませんでした。
概念的な部分に愚かなことが欠けていることは知っていますが、もし皆さんが私を助けてくれれば、非常に感謝しています.