ビットリーダークラスのテストを書いています。リーダーのソースである ByteBuffer があり、32 のランダム バイトで初期化します。次に、ByteBuffer を初期値として BitBuffer を作成します。
これは私が持っているバイト[]です:
[-35, -15, 33, -71, -107, 4, -68, 60, -47, -116, -85, -3, -86, -16, 51, 77, 22, -47, -41, 64, 50, 38, -6, -110, 69, 87, -38, -101, 58, 15, 70, 66]
それを手動でビットに変換すると、出力は次のようになります
1101 1101 1111 0001 0010 0001 1011 1001 1011 1001 1001 0101 0000 0100 1011 1100 ...
BitSet ビット 0、1、3、4、5、7 ... が設定されることを期待しますが、デバッグ表示では次のように表示されます
{0, 2, 3, 4, 6, 7, 8, ....
この一致はよくわかりませんが、その理由はわかりません。説明できますか?