Class ImmutableListCopy<E>

  • All Implemented Interfaces:
    Iterable<E>, Collection<E>, List<E>, Immutables.Immutable

    @Immutable
    public class ImmutableListCopy<E>
    extends AbstractList<E>
    implements Immutables.Immutable
    A lightweight, read-only copy of a List. Typically used in place of the common idiom: return Collections.unmodifiableList(new ArrayList( myInternalList ));

    a it is far more efficient than making a defensive copy and then wrapping the defensive copy in a read-only wrapper.

    Also used whenever a read-only reference List is needed.

    Since:
    4.0
    Author:
    Manik Surtani (manik@jboss.org)