Class SetUniqueList<E>

All Implemented Interfaces:
Serializable, Iterable<E>, Collection<E>, List<E>

Decorates a List to ensure that no duplicates are present much like a Set.

The List interface makes certain assumptions/requirements. This implementation breaks these in certain ways, but this is merely the result of rejecting duplicates. Each violation is explained in the method, but it should not affect you. Bear in mind that Sets require immutable objects to function correctly.

The ListOrderedSet class provides an alternative approach, by wrapping an existing Set and retaining insertion order in the iterator.

This class is Serializable from Commons Collections 3.1.

Since:
3.0
See Also:
  • Constructor Details

    • SetUniqueList

      protected SetUniqueList(List<E> list, Set<E> set)
      Constructor that wraps (not copies) the List and specifies the set to use.

      The set and list must both be correctly initialised to the same elements.

      Parameters:
      set - the set to decorate, must not be null
      list - the list to decorate, must not be null
      Throws:
      NullPointerException - if set or list is null
  • Method Details