Java Utility Library

Java.util.BitSet Class



Java BitSet Class

Java.util package provides a BitSet class which implements a vector of bits that grows as needed. Each component of the bit set has a boolean value. The bits of a BitSet are indexed by nonnegative integers. By default, all bits in the set initially have the value false. One BitSet may be used to modify the contents of another BitSet through logical AND, logical inclusive OR, and logical exclusive OR operations.

Passing a null parameter to any of the methods in a BitSet will result in a NullPointerException.

A BitSet is not safe for multithreaded use without external synchronization.

Class declaration

The declaration of java.util.BitSet class is:

public class BitSet
  extends Object
    implements Cloneable, Serializable

Class Constructors

S.NConstructors & Description
1. BitSet()
Creates a new bit set.
2. BitSet(int nbits)
Creates a bit set whose initial size is large enough to explicitly represent bits with indices in the range 0 through nbits-1.

java.util.BitSet Methods

The java.util.BitSet class has a number of methods which are listed below:

Member Methods

S.NMethods & Description
1. void and(BitSet set)
Performs a logical AND of this target bit set with the argument bit set.
2. void andNot(BitSet set)
Clears all of the bits in this BitSet whose corresponding bit is set in the specified BitSet.
3. int cardinality()
Returns the number of bits set to true in this BitSet.
4. void clear()
Sets all of the bits in this BitSet to false.
5. void clear(int bitIndex)
Sets the bit specified by the index to false.
6. void clear(int fromIndex, int toIndex)
Sets the bits from the specified fromIndex (inclusive) to the specified toIndex (exclusive) to false.
7. Object clone()
Cloning this BitSet produces a new BitSet that is equal to it.
8. boolean equals(Object obj)
Compares this object against the specified object.
9. void flip(int bitIndex)
Sets the bit at the specified index to the complement of its current value.
10. void flip(int fromIndex, int toIndex)
Sets each bit from the specified fromIndex (inclusive) to the specified toIndex (exclusive) to the complement of its current value.
11. boolean get(int bitIndex)
Returns the value of the bit with the specified index.
12. BitSet get(int fromIndex, int toIndex)
Returns a new BitSet composed of bits from this BitSet from fromIndex (inclusive) to toIndex (exclusive).
13. int hashCode()
Returns the hash code value for this bit set.
14. boolean intersects(BitSet set)
Returns true if the specified BitSet has any bits set to true that are also set to true in this BitSet.
15. boolean isEmpty()
Returns true if the BitSet contains no bits, else returns false.
16. int length()
Returns the "logical size" of this BitSet: the index of the highest set bit in the BitSet plus one.
17. int nextClearBit(int fromIndex)
Returns the index of the first bit that is set to false that occurs on or after the specified starting index.
18. int nextSetBit(int fromIndex)
Returns the index of the first bit that is set to true that occurs on or after the specified starting index.
19. void or(BitSet set)
Performs a logical OR of this bit set with the bit set argument.
20. int previousClearBit(int fromIndex)
Returns the index of the nearest bit that is set to false that occurs on or before the specified starting index.
21. int previousSetBit(int fromIndex)
Returns the index of the nearest bit that is set to true that occurs on or before the specified starting index.
22. void set(int bitIndex)
Sets the bit at the specified index to true.
23. void set(int bitIndex, boolean value)
Sets the bit at the specified index to the specified value.
24. void set(int fromIndex, int toIndex)
Sets the bits from the specified fromIndex (inclusive) to the specified toIndex (exclusive) to true.
25. void set(int fromIndex, int toIndex, boolean value)
Sets the bits from the specified fromIndex (inclusive) to the specified toIndex (exclusive) to the specified value.
26. int size()
Returns the number of bits of space actually in use by this BitSet to represent bit values.
27. IntStream stream()
Returns a stream of indices for which this BitSet contains a bit in the set state.
28. byte[] toByteArray()
Returns a new byte array containing all the bits in this bit set.
29. long[] toLongArray()
Returns a new long array containing all the bits in this bit set.
30. String toString()
Returns a string representation of this bit set.
31. static BitSet valueOf(byte[] bytes)
Returns a new bit set containing all the bits in the given byte array.
32. static BitSet valueOf(ByteBuffer bb)
Returns a new bit set containing all the bits in the given byte buffer between its position and limit.
33. static BitSet valueOf(long[] bytes)
Returns a new bit set containing all the bits in the given long array.
34. static BitSet valueOf(LongBuffer lb)
Returns a new bit set containing all the bits in the given long buffer between its position and limit.
35. void xor(BitSet set)
Performs a logical XOR of this bit set with the bit set argument.

Methods inherited

This class inherits the methods of following class:

  • java.lang.Object