public final class BitArray extends Object
A simple, fast array of bits, represented compactly by an array of ints internally.
Constructor and Description |
---|
BitArray(int size) |
Modifier and Type | Method and Description |
---|---|
void |
clear()
Clears all bits (sets to false).
|
void |
flip(int i)
Flips bit i.
|
boolean |
get(int i) |
int[] |
getBitArray() |
int |
getSize() |
boolean |
isRange(int start, int end, boolean value)
Efficient method to check if a range of bits is set, or not set.
|
void |
reverse()
Reverses all bits in the array.
|
void |
set(int i)
Sets bit i.
|
void |
setBulk(int i, int newBits)
Sets a block of 32 bits, starting at bit i.
|
String |
toString() |
public int getSize()
public boolean get(int i)
i
- bit to get
public void set(int i)
i
- bit to set
public void flip(int i)
i
- bit to set
public void setBulk(int i, int newBits)
i
- first bit to set
newBits
- the new value of the next 32 bits. Note again that the least-significant bit corresponds to bit i, the next-least-significant to i+1, and so on.
public void clear()
public boolean isRange(int start, int end, boolean value)
start
- start of range, inclusive.
end
- end of range, exclusive
value
- if true, checks that bits in range are set, otherwise checks that they are not set
IllegalArgumentException
- if end is less than or equal to start
public int[] getBitArray()
public void reverse()
Copyright © 2016. All rights reserved.