Package org.apache.commons.collections.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:
- Synchronized - synchronizes method access for multi-threaded environments
- Unmodifiable - ensures the collection cannot be altered
- Predicated - ensures that only elements that are valid according to a predicate can be added
- Typed - ensures that only elements that are of a specific type 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 An abstract implementation of a linked list which provides numerous points for subclasses to override.AbstractLinkedList.LinkedListIterator A list iterator over the linked list.AbstractLinkedList.LinkedSubList The sublist implementation for AbstractLinkedList.AbstractLinkedList.LinkedSubListIterator A list iterator over the linked sub list.AbstractLinkedList.Node A node within the linked list.AbstractListDecorator Decorates anotherList
to provide additional behaviour.AbstractSerializableListDecorator Serializable subclass of AbstractListDecorator.CursorableLinkedList AList
implementation with aListIterator
that allows concurrent modifications to the underlying list.CursorableLinkedList.Cursor An extendedListIterator
that allows concurrent changes to the underlying list.CursorableLinkedList.SubCursor A cursor for the sublist based on LinkedSubListIterator.FixedSizeList Decorates anotherList
to fix the size preventing add/remove.GrowthList Decorates anotherList
to make it seamlessly grow when indices larger than the list size are used on add and set, avoiding most IndexOutOfBoundsExceptions.LazyList Decorates anotherList
to create objects in the list on demand.NodeCachingLinkedList AList
implementation that stores a cache of internal Node objects in an effort to reduce wasteful object creation.PredicatedList Decorates anotherList
to validate that all additions match a specified predicate.SetUniqueList Decorates aList
to ensure that no duplicates are present much like aSet
.SynchronizedList Decorates anotherList
to synchronize its behaviour for a multi-threaded environment.TransformedList Decorates anotherList
to transform objects that are added.TreeList AList
implementation that is optimised for fast insertions and removals at any index in the list.TypedList Decorates anotherList
to validate that elements added are of a specific type.UnmodifiableList Decorates anotherList
to ensure it can't be altered.