public class OrderedSet<T> extends ObjectSet<T>
ObjectSet
that also stores keys in an Array
using the insertion order. Iteration
is
ordered and faster than an unordered set. Keys can also be accessed and the order changed using orderedItems()
. There
is some additional overhead for put and remove. When used for faster iteration versus ObjectSet and the order does not actually
matter, copying during remove can be greatly reduced by setting Array.ordered
to false for
orderedItems()
.Modifier and Type | Class and Description |
---|---|
static class |
OrderedSet.OrderedSetIterator<T> |
ObjectSet.ObjectSetIterator<K>
Constructor and Description |
---|
OrderedSet() |
OrderedSet(int initialCapacity) |
OrderedSet(int initialCapacity,
float loadFactor) |
OrderedSet(OrderedSet set) |
Modifier and Type | Method and Description |
---|---|
boolean |
add(T key)
Returns true if the key was not already in the set.
|
boolean |
add(T key,
int index) |
void |
clear()
Clears the set, leaving the backing arrays at the current capacity.
|
void |
clear(int maximumCapacity)
Clears the set and reduces the size of the backing arrays to be the specified capacity, if they are larger.
|
OrderedSet.OrderedSetIterator<T> |
iterator()
Returns an iterator for the keys in the set.
|
Array<T> |
orderedItems() |
boolean |
remove(T key)
Returns true if the key was removed.
|
T |
removeIndex(int index) |
String |
toString() |
String |
toString(String separator) |
addAll, addAll, addAll, addAll, addAll, contains, ensureCapacity, equals, first, get, hashCode, isEmpty, shrink, with
forEach, spliterator
public OrderedSet()
public OrderedSet(int initialCapacity, float loadFactor)
public OrderedSet(int initialCapacity)
public OrderedSet(OrderedSet set)
public boolean add(T key)
ObjectSet
public boolean add(T key, int index)
public boolean remove(T key)
ObjectSet
public T removeIndex(int index)
public void clear(int maximumCapacity)
ObjectSet
public void clear()
ObjectSet
ObjectSet.clear(int)
can be used to reduce the capacity.public OrderedSet.OrderedSetIterator<T> iterator()
ObjectSet
ObjectSet.ObjectSetIterator
constructor for nested or multithreaded iteration.Copyright © 2018. All rights reserved.