Я упускаю что-то болезненно очевидное? Или просто никто в мире не использует java.util.BitSet?
Следующий тест не проходит:
@Test
public void testBitSet() throws Exception {
BitSet b = new BitSet();
b.set(0, true);
b.set(1, false);
assertEquals(2, b.length());
}
Мне действительно неясно, почему я не получаю BitSet длиной 2 и значением 10. Я заглянул в источник для java.util.BitSet, и при случайном осмотре, кажется, не удается провести достаточное различие между бит это было установлено как false и бит, который никогда не устанавливался ни в какое значение...
(Обратите внимание, что явное задание размера BitSet в конструкторе не имеет никакого эффекта, например:
BitSet b = new BitSet(2);