java.lang.Object | |
↳ | java.util.BitSet |
The BitSet
class implements a
bit array.
Each element is either true or false. A BitSet
is created with a given size and grows
automatically if this size is exceeded.
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Creates a new
BitSet with size equal to 64 bits.
| |||||||||||
Creates a new
BitSet with size equal to bitCount , rounded up to
a multiple of 64.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Logically ands the bits of this
BitSet with bs .
| |||||||||||
Clears all bits in this
BitSet which are also set in bs .
| |||||||||||
Returns the number of bits that are
true in this BitSet .
| |||||||||||
Clears the bit at index
index .
| |||||||||||
Clears all the bits in this
BitSet .
| |||||||||||
Clears the range of bits
[fromIndex, toIndex) .
| |||||||||||
Creates and returns a copy of this
Object .
| |||||||||||
Compares this instance with the specified object and indicates if they
are equal.
| |||||||||||
Flips the bit at index
index .
| |||||||||||
Flips the range of bits
[fromIndex, toIndex) .
| |||||||||||
Returns the bit at index
index .
| |||||||||||
Returns a new
BitSet containing the
range of bits [fromIndex, toIndex) , shifted down so that the bit
at fromIndex is at bit 0 in the new BitSet .
| |||||||||||
Returns an integer hash code for this object.
| |||||||||||
Returns true if
this.and(bs) is non-empty, but may be faster than computing that.
| |||||||||||
Returns true if all the bits in this
BitSet are set to false, false otherwise.
| |||||||||||
Returns the number of bits up to and including the highest bit set.
| |||||||||||
Returns the index of the first bit that is clear on or after
index .
| |||||||||||
Returns the index of the first bit that is set on or after
index , or -1
if no higher bits are set.
| |||||||||||
Logically ors the bits of this
BitSet with bs .
| |||||||||||
Returns the index of the first bit that is clear on or before
index , or -1 if
no lower bits are clear or index == -1 .
| |||||||||||
Returns the index of the first bit that is set on or before
index , or -1 if
no lower bits are set or index == -1 .
| |||||||||||
Sets the bit at index
index to state .
| |||||||||||
Sets the range of bits
[fromIndex, toIndex) to state .
| |||||||||||
Sets the range of bits
[fromIndex, toIndex) .
| |||||||||||
Sets the bit at index
index to true.
| |||||||||||
Returns the capacity in bits of the array implementing this
BitSet .
| |||||||||||
Returns a new
byte[] containing a little-endian representation the bits of
this BitSet , suitable for passing to valueOf to reconstruct
this BitSet .
| |||||||||||
Returns a new
long[] containing a little-endian representation of the bits of
this BitSet , suitable for passing to valueOf to reconstruct
this BitSet .
| |||||||||||
Returns a string containing a concise, human-readable description of the
receiver: a comma-delimited list of the indexes of all set bits.
| |||||||||||
Equivalent to
BitSet.valueOf(ByteBuffer.wrap(bytes)) .
| |||||||||||
Returns a
BitSet corresponding to byteBuffer , interpreted as a little-endian
sequence of bits.
| |||||||||||
Returns a
BitSet corresponding to longBuffer , interpreted as a little-endian
sequence of bits.
| |||||||||||
Equivalent to
BitSet.valueOf(LongBuffer.wrap(longs)) , but likely to be faster.
| |||||||||||
Logically xors the bits of this
BitSet with bs .
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
|
Creates a new BitSet
with size equal to bitCount
, rounded up to
a multiple of 64.
NegativeArraySizeException | if bitCount < 0 .
|
---|
Clears all bits in this BitSet
which are also set in bs
.
Returns the number of bits that are true
in this BitSet
.
Clears the bit at index index
.
IndexOutOfBoundsException | if index < 0 .
|
---|
Clears all the bits in this BitSet
. This method does not change the capacity.
Use clear
if you want to reuse this BitSet
with the same capacity, but
create a new BitSet
if you're trying to potentially reclaim memory.
Clears the range of bits [fromIndex, toIndex)
.
IndexOutOfBoundsException | if fromIndex or toIndex is negative, or if
toIndex is smaller than fromIndex .
|
---|
Creates and returns a copy of this Object
. The default
implementation returns a so-called "shallow" copy: It creates a new
instance of the same class and then copies the field values (including
object references) from this instance to the new instance. A "deep" copy,
in contrast, would also recursively clone nested objects. A subclass that
needs to implement this kind of cloning should call super.clone()
to create the new instance and then create deep copies of the nested,
mutable objects.
Compares this instance with the specified object and indicates if they
are equal. In order to be equal, o
must represent the same object
as this instance using a class-specific comparison. The general contract
is that this comparison should be reflexive, symmetric, and transitive.
Also, no object reference other than null is equal to null.
The default implementation returns true
only if this ==
o
. See Writing a correct
equals
method
if you intend implementing your own equals
method.
The general contract for the equals
and hashCode()
methods is that if equals
returns true
for
any two objects, then hashCode()
must return the same value for
these objects. This means that subclasses of Object
usually
override either both methods or neither of them.
o | the object to compare this instance with. |
---|
true
if the specified object is equal to this Object
; false
otherwise.Flips the bit at index index
.
IndexOutOfBoundsException | if index < 0 .
|
---|
Flips the range of bits [fromIndex, toIndex)
.
IndexOutOfBoundsException | if fromIndex or toIndex is negative, or if
toIndex is smaller than fromIndex .
|
---|
Returns the bit at index index
. Indexes greater than the current length return false.
IndexOutOfBoundsException | if index < 0 .
|
---|
Returns a new BitSet
containing the
range of bits [fromIndex, toIndex)
, shifted down so that the bit
at fromIndex
is at bit 0 in the new BitSet
.
IndexOutOfBoundsException | if fromIndex or toIndex is negative, or if
toIndex is smaller than fromIndex .
|
---|
Returns an integer hash code for this object. By contract, any two
objects for which equals(Object)
returns true
must return
the same hash code value. This means that subclasses of Object
usually override both methods or neither method.
Note that hash values must not change over time unless information used in equals comparisons also changes.
See Writing a correct
hashCode
method
if you intend implementing your own hashCode
method.
Returns true if this.and(bs)
is non-empty, but may be faster than computing that.
Returns true if all the bits in this BitSet
are set to false, false otherwise.
Returns the number of bits up to and including the highest bit set. This is unrelated to
the size()
of the BitSet
.
Returns the index of the first bit that is clear on or after index
.
Since all bits past the end are implicitly clear, this never returns -1.
IndexOutOfBoundsException | if index < 0 .
|
---|
Returns the index of the first bit that is set on or after index
, or -1
if no higher bits are set.
IndexOutOfBoundsException | if index < 0 .
|
---|
Returns the index of the first bit that is clear on or before index
, or -1 if
no lower bits are clear or index == -1
.
IndexOutOfBoundsException | if index < -1 . |
---|
Returns the index of the first bit that is set on or before index
, or -1 if
no lower bits are set or index == -1
.
IndexOutOfBoundsException | if index < -1 . |
---|
Sets the bit at index index
to state
.
IndexOutOfBoundsException | if index < 0 .
|
---|
Sets the range of bits [fromIndex, toIndex)
to state
.
IndexOutOfBoundsException | if fromIndex or toIndex is negative, or if
toIndex is smaller than fromIndex .
|
---|
Sets the range of bits [fromIndex, toIndex)
.
IndexOutOfBoundsException | if fromIndex or toIndex is negative, or if
toIndex is smaller than fromIndex .
|
---|
Sets the bit at index index
to true.
IndexOutOfBoundsException | if index < 0 .
|
---|
Returns the capacity in bits of the array implementing this BitSet
. This is
unrelated to the length of the BitSet
, and not generally useful.
Use nextSetBit(int)
to iterate, or length()
to find the highest set bit.
Returns a new byte[]
containing a little-endian representation the bits of
this BitSet
, suitable for passing to valueOf
to reconstruct
this BitSet
.
Returns a new long[]
containing a little-endian representation of the bits of
this BitSet
, suitable for passing to valueOf
to reconstruct
this BitSet
.
Returns a string containing a concise, human-readable description of the
receiver: a comma-delimited list of the indexes of all set bits.
For example: "{0,1,8
"}.
Equivalent to BitSet.valueOf(ByteBuffer.wrap(bytes))
.
Returns a BitSet
corresponding to byteBuffer
, interpreted as a little-endian
sequence of bits. This method does not alter the ByteBuffer
.
Returns a BitSet
corresponding to longBuffer
, interpreted as a little-endian
sequence of bits. This method does not alter the LongBuffer
.
Equivalent to BitSet.valueOf(LongBuffer.wrap(longs))
, but likely to be faster.
This is likely to be the fastest way to create a BitSet
because it's closest
to the internal representation.