byte[]转BitSet有问题
一 举栗子
二 原因
redis中读出来的byte[]中一个字节的顺序和BitSet中一个字节的顺序是相反的
三 解决方法
public class Byte2Bitset {
public static BitSet fromByteArrayReverse(final byte[] bytes) {
final BitSet bits = new BitSet();
int bytesLength = bytes.length * 8;
for (int i = 0; i < bytesLength; i++) {
if ((bytes[i / 8] & (1 << (7 - (i % 8)))) != 0) {
bits.set(i);
}
}
return bits;
}
}