I’m looking for a good Java BitSet example to work with 0 and 1s. I tried looking at the Javadocs but I don’t understand the usage of the class by just reading that. For instance, how would the and, or, and xor methods work on two different BitSet objects?
For example:
BitSet bits1 = new BitSet();
BitSet bits2 = new BitSet();
bits2.set(1000001);
bits1.set(1111111);
bits2.and(bits1);
System.out.println(bits2);
If I do this it returns bits2 as empty why is that?
For the specific problem you mentioned: when you called
bits2.set(1000001), you set the one millionth and first bit to true. Then when you intersected withbits1, which had the one million, 111 thousand, and 111st bit set, they had no bits in common.I think what you meant to do was
Does this help clear things up?