Android
java.util
public class

java.util.BitSet

java.lang.Object
java.util.BitSet Serializable Cloneable

The BitSet class implements a bit field. Each element in a BitSet can be on(1) or off(0). A BitSet is created with a given size and grows when this size is exceeded. Growth is always rounded to a 64 bit boundary.

Summary

Public Constructors

            BitSet()
Create a new BitSet with size equal to 64 bits
            BitSet(int nbits)
Create a new BitSet with size equal to nbits.

Public Methods

          void  and(BitSet bs)
Performs the logical AND of this BitSet with another BitSet.
          void  andNot(BitSet bs)
Clears all bits in the receiver which are also set in the parameter BitSet.
          int  cardinality()
Returns the number of bits that are true in this bitset.
          void  clear()
Clears all the bits in this bitset.
          void  clear(int pos1, int pos2)
Clears the bits starting from pos1 to pos2.
          void  clear(int pos)
Clears the bit at index pos.
          Object  clone()
Create a copy of this BitSet
          boolean  equals(Object obj)
Compares the argument to this BitSet and answer if they are equal.
          void  flip(int pos1, int pos2)
Flips the bits starting from pos1 to pos2.
          void  flip(int pos)
Flips the bit at index pos.
          boolean  get(int pos)
Retrieve the bit at index pos.
          BitSet  get(int pos1, int pos2)
Retrieves the bits starting from pos1 to pos2 and returns back a new bitset made of these bits.
          int  hashCode()
Computes the hash code for this BitSet.
          boolean  intersects(BitSet bs)
Checks if these two bitsets have at least one bit set to true in the same position.
          boolean  isEmpty()
Returns true if all the bits in this bitset are set to false.
          int  length()
Returns the number of bits up to and including the highest bit set.
          int  nextClearBit(int pos)
Returns the position of the first bit that is false on or after pos
          int  nextSetBit(int pos)
Returns the position of the first bit that is true on or after pos
          void  or(BitSet bs)
Performs the logical OR of this BitSet with another BitSet.
          void  set(int pos)
Sets the bit at index pos to 1.
          void  set(int pos, boolean val)
Sets the bit at index pos to the value.
          void  set(int pos1, int pos2)
Sets the bits starting from pos1 to pos2.
          void  set(int pos1, int pos2, boolean val)
Sets the bits starting from pos1 to pos2 to the given boolean value.
          int  size()
Returns the number of bits this bitset has.
          String  toString()
Returns a string containing a concise, human-readable description of the receiver.
          void  xor(BitSet bs)
Performs the logical XOR of this BitSet with another BitSet.
Methods inherited from class java.lang.Object

Details

Public Constructors

public BitSet()

Create a new BitSet with size equal to 64 bits

public BitSet(int nbits)

Create a new BitSet with size equal to nbits. If nbits is not a multiple of 64, then create a BitSet with size nbits rounded to the next closest multiple of 64.

Parameters

nbits the size of the bit set

Throws

NegativeArraySizeException if nbits < 0.

Public Methods

public void and(BitSet bs)

Performs the logical AND of this BitSet with another BitSet.

Parameters

bs BitSet to AND with

public void andNot(BitSet bs)

Clears all bits in the receiver which are also set in the parameter BitSet.

Parameters

bs BitSet to ANDNOT with

public int cardinality()

Returns the number of bits that are true in this bitset.

Returns

  • the number of true bits in the set

public void clear()

Clears all the bits in this bitset.

public void clear(int pos1, int pos2)

Clears the bits starting from pos1 to pos2. Grows the BitSet if pos2 > size.

Parameters

pos1 beginning position
pos2 ending position

Throws

IndexOutOfBoundsException when pos1 or pos2 is negative, or when pos2 is not smaller than pos1

See Also

public void clear(int pos)

Clears the bit at index pos. Grows the BitSet if pos > size.

Parameters

pos the index of the bit to clear

Throws

IndexOutOfBoundsException when pos < 0

See Also

public Object clone()

Create a copy of this BitSet

Returns

  • A copy of this BitSet.

public boolean equals(Object obj)

Compares the argument to this BitSet and answer if they are equal. The object must be an instance of BitSet with the same bits set.

Parameters

obj the BitSet object to compare

Returns

  • A boolean indicating whether or not this BitSet and obj are equal

See Also

public void flip(int pos1, int pos2)

Flips the bits starting from pos1 to pos2. Grows the BitSet if pos2 > size.

Parameters

pos1 beginning position
pos2 ending position

Throws

IndexOutOfBoundsException when pos1 or pos2 is negative, or when pos2 is not smaller than pos1

See Also

public void flip(int pos)

Flips the bit at index pos. Grows the BitSet if pos > size.

Parameters

pos the index of the bit to flip

Throws

IndexOutOfBoundsException when pos < 0

See Also

public boolean get(int pos)

Retrieve the bit at index pos. Grows the BitSet if pos > size.

Parameters

pos the index of the bit to be retrieved

Returns

  • true if the bit at pos is set, false otherwise

Throws

IndexOutOfBoundsException when pos < 0

public BitSet get(int pos1, int pos2)

Retrieves the bits starting from pos1 to pos2 and returns back a new bitset made of these bits. Grows the BitSet if pos2 > size.

Parameters

pos1 beginning position
pos2 ending position

Returns

  • new bitset

Throws

IndexOutOfBoundsException when pos1 or pos2 is negative, or when pos2 is not smaller than pos1

See Also

public int hashCode()

Computes the hash code for this BitSet.

Returns

  • The int representing the hash code for this bit set.

public boolean intersects(BitSet bs)

Checks if these two bitsets have at least one bit set to true in the same position.

Parameters

bs BitSet used to calculate intersect

Returns

  • true if bs intersects with this BitSet, false otherwise

public boolean isEmpty()

Returns true if all the bits in this bitset are set to false.

Returns

  • true if the BitSet is empty, false otherwise

public int length()

Returns the number of bits up to and including the highest bit set.

Returns

  • the length of the BitSet

public int nextClearBit(int pos)

Returns the position of the first bit that is false on or after pos

Parameters

pos the starting position (inclusive)

Returns

  • the position of the next bit set to false, even if it is further than this bitset's size.

public int nextSetBit(int pos)

Returns the position of the first bit that is true on or after pos

Parameters

pos the starting position (inclusive)

Returns

  • -1 if there is no bits that are set to true on or after pos.

public void or(BitSet bs)

Performs the logical OR of this BitSet with another BitSet.

Parameters

bs BitSet to OR with

public void set(int pos)

Sets the bit at index pos to 1. Grows the BitSet if pos > size.

Parameters

pos the index of the bit to set

Throws

IndexOutOfBoundsException when pos < 0

public void set(int pos, boolean val)

Sets the bit at index pos to the value. Grows the BitSet if pos > size.

Parameters

pos the index of the bit to set
val value to set the bit

Throws

IndexOutOfBoundsException when pos < 0

See Also

public void set(int pos1, int pos2)

Sets the bits starting from pos1 to pos2. Grows the BitSet if pos2 > size.

Parameters

pos1 beginning position
pos2 ending position

Throws

IndexOutOfBoundsException when pos1 or pos2 is negative, or when pos2 is not smaller than pos1

See Also

public void set(int pos1, int pos2, boolean val)

Sets the bits starting from pos1 to pos2 to the given boolean value. Grows the BitSet if pos2 > size.

Parameters

pos1 beginning position
pos2 ending position
val value to set these bits

Throws

IndexOutOfBoundsException when pos1 or pos2 is negative, or when pos2 is not smaller than pos1

See Also

public int size()

Returns the number of bits this bitset has.

Returns

  • The number of bits contained in this BitSet.

See Also

public String toString()

Returns a string containing a concise, human-readable description of the receiver.

Returns

  • A comma delimited list of the indices of all bits that are set.

public void xor(BitSet bs)

Performs the logical XOR of this BitSet with another BitSet.

Parameters

bs BitSet to XOR with
Copyright 2007 Google Inc. Build 0.9_r1-98467 - 14 Aug 2008 18:48