. It is less memory
efficient than BitSet
, except for very small sizes. It more CPU efficient than BitSet
, except for very large
sizes or if BitSet functionality such as and, or, xor, etc are needed. If unordered, this class avoids a memory copy when
removing elements (the last element is moved to the removed element's position).
- Author:
- Nathan Sweet
Constructor Summary |
BooleanArray()
Creates an ordered array with a capacity of 16. |
BooleanArray(boolean[] array)
Creates a new ordered array containing the elements in the specified array. |
BooleanArray(BooleanArray array)
Creates a new array containing the elements in the specific array. |
BooleanArray(boolean ordered,
boolean[] array,
int startIndex,
int count)
Creates a new array containing the elements in the specified array. |
BooleanArray(boolean ordered,
int capacity)
|
BooleanArray(int capacity)
Creates an ordered array with the specified capacity. |
Method Summary |
void |
add(boolean value)
|
void |
addAll(boolean[] array)
|
void |
addAll(boolean[] array,
int offset,
int length)
|
void |
addAll(BooleanArray array)
|
void |
addAll(BooleanArray array,
int offset,
int length)
|
void |
clear()
|
boolean[] |
ensureCapacity(int additionalCapacity)
Increases the size of the backing array to acommodate the specified number of additional items. |
boolean |
equals(Object object)
|
boolean |
first()
Returns the first item. |
boolean |
get(int index)
|
void |
insert(int index,
boolean value)
|
boolean |
peek()
Returns the last item. |
boolean |
pop()
Removes and returns the last item. |
boolean |
random()
Returns a random item from the array, or false if the array is empty. |
boolean |
removeAll(BooleanArray array)
Removes from this array all of elements contained in the specified array. |
boolean |
removeIndex(int index)
Removes and returns the item at the specified index. |
void |
reverse()
|
void |
set(int index,
boolean value)
|
void |
shrink()
Reduces the size of the backing array to the size of the actual items. |
void |
shuffle()
|
void |
swap(int first,
int second)
|
boolean[] |
toArray()
|
String |
toString()
|
String |
toString(String separator)
|
void |
truncate(int newSize)
Reduces the size of the array to the specified size. |
items
public boolean[] items
size
public int size
ordered
public boolean ordered
BooleanArray
public BooleanArray()
- Creates an ordered array with a capacity of 16.
BooleanArray
public BooleanArray(int capacity)
- Creates an ordered array with the specified capacity.
BooleanArray
public BooleanArray(boolean ordered,
int capacity)
- Parameters:
ordered
- If false, methods that remove elements may change the order of other elements in the array, which avoids a
memory copy.capacity
- Any elements added beyond this will cause the backing array to be grown.
BooleanArray
public BooleanArray(BooleanArray array)
- Creates a new array containing the elements in the specific array. The new array will be ordered if the specific array is
ordered. The capacity is set to the number of elements, so any subsequent elements added will cause the backing array to be
grown.
BooleanArray
public BooleanArray(boolean[] array)
- Creates a new ordered array containing the elements in the specified array. The capacity is set to the number of elements,
so any subsequent elements added will cause the backing array to be grown.
BooleanArray
public BooleanArray(boolean ordered,
boolean[] array,
int startIndex,
int count)
- Creates a new array containing the elements in the specified array. The capacity is set to the number of elements, so any
subsequent elements added will cause the backing array to be grown.
- Parameters:
ordered
- If false, methods that remove elements may change the order of other elements in the array, which avoids a
memory copy.
add
public void add(boolean value)
addAll
public void addAll(BooleanArray array)
addAll
public void addAll(BooleanArray array,
int offset,
int length)
addAll
public void addAll(boolean[] array)
addAll
public void addAll(boolean[] array,
int offset,
int length)
get
public boolean get(int index)
set
public void set(int index,
boolean value)
insert
public void insert(int index,
boolean value)
swap
public void swap(int first,
int second)
removeIndex
public boolean removeIndex(int index)
- Removes and returns the item at the specified index.
removeAll
public boolean removeAll(BooleanArray array)
- Removes from this array all of elements contained in the specified array.
- Returns:
- true if this array was modified.
pop
public boolean pop()
- Removes and returns the last item.
peek
public boolean peek()
- Returns the last item.
first
public boolean first()
- Returns the first item.
clear
public void clear()
shrink
public void shrink()
- Reduces the size of the backing array to the size of the actual items. This is useful to release memory when many items have
been removed, or if it is known that more items will not be added.
ensureCapacity
public boolean[] ensureCapacity(int additionalCapacity)
- Increases the size of the backing array to acommodate the specified number of additional items. Useful before adding many
items to avoid multiple backing array resizes.
- Returns:
items
reverse
public void reverse()
shuffle
public void shuffle()
truncate
public void truncate(int newSize)
- Reduces the size of the array to the specified size. If the array is already smaller than the specified size, no action is
taken.
random
public boolean random()
- Returns a random item from the array, or false if the array is empty.
toArray
public boolean[] toArray()
equals
public boolean equals(Object object)
- Overrides:
equals
in class Object
toString
public String toString()
- Overrides:
toString
in class Object
toString
public String toString(String separator)
Copyright © 2013. All Rights Reserved.