Performing Bitwise Operations on a Bit Vector - Java Collection Framework

Java examples for Collection Framework:BitSet

Description

Performing Bitwise Operations on a Bit Vector

Demo Code

import java.util.BitSet;

public class Main {
  public static void main(String[] argv) {
    // Create the bitset
    BitSet bits = new BitSet();

    // Set a bit on
    bits.set(2); // 100 = decimal 4

    // Retrieving the value of a bit
    boolean b = bits.get(0); // false
    b = bits.get(2); // true

    // Clear a bit
    bits.clear(1);/* w ww . ja  v  a2s  .c  om*/

    // Setting a range of bits
    BitSet bits2 = new BitSet();
    bits2.set(1, 4); // 1110

    // And'ing two bitsets
    bits.and(bits2); // 0100

    // Xor'ing two bitsets
    bits.xor(bits2); // 1010

    // Flip all bits in the bitset
    bits.flip(0, bits.length()); // 0101

    // Andnot'ing two bitsets
    bits.andNot(bits2); // 0001

    // Or'ing two bitsets
    bits.or(bits2); // 1111
  }
}

Related Tutorials