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