Package org.apache.commons.collections4.list
This package contains implementations of the
List
interface.
The following implementations are provided in the package:
- TreeList - a list that is optimised for insertions and removals at any index in the list
- CursorableLinkedList - a list that can be modified while the listIterator (cursor) is being used
- NodeCachingLinkedList - a linked list that caches the storage nodes for a performance gain
The following decorators are provided in the package:
- Unmodifiable - ensures the collection cannot be altered
- Predicated - ensures that only elements that are valid according to a predicate can be added
- Transformed - transforms each element added
- FixedSize - ensures that the size of the list cannot change
- Lazy - creates objects in the list on demand
- Growth - grows the list instead of erroring when set/add used with index beyond the list size
- SetUnique - a list that avoids duplicate entries like a Set
-
Class Summary Class Description AbstractLinkedList<E> An abstract implementation of a linked list which provides numerous points for subclasses to override.AbstractLinkedList.LinkedListIterator<E> A list iterator over the linked list.AbstractLinkedList.LinkedSubList<E> The sublist implementation for AbstractLinkedList.AbstractLinkedList.LinkedSubListIterator<E> A list iterator over the linked sub list.AbstractLinkedList.Node<E> A node within the linked list.AbstractListDecorator<E> Decorates anotherList
to provide additional behaviour.AbstractSerializableListDecorator<E> Serializable subclass of AbstractListDecorator.CursorableLinkedList<E> AList
implementation with aListIterator
that allows concurrent modifications to the underlying list.CursorableLinkedList.Cursor<E> An extendedListIterator
that allows concurrent changes to the underlying list.CursorableLinkedList.SubCursor<E> A cursor for the sublist based on LinkedSubListIterator.FixedSizeList<E> Decorates anotherList
to fix the size preventing add/remove.GrowthList<E> Decorates anotherList
to make it seamlessly grow when indices larger than the list size are used on add and set, avoiding most IndexOutOfBoundsExceptions.LazyList<E> Decorates anotherList
to create objects in the list on demand.NodeCachingLinkedList<E> AList
implementation that stores a cache of internal Node objects in an effort to reduce wasteful object creation.PredicatedList<E> Decorates anotherList
to validate that all additions match a specified predicate.SetUniqueList<E> Decorates aList
to ensure that no duplicates are present much like aSet
.TransformedList<E> Decorates anotherList
to transform objects that are added.TreeList<E> AList
implementation that is optimised for fast insertions and removals at any index in the list.UnmodifiableList<E> Decorates anotherList
to ensure it can't be altered.