@GwtCompatible(serializable=true, emulated=true) public abstract class ImmutableList<E> extends ImmutableCollection<E> implements java.util.List<E>, java.util.RandomAccess
List whose contents will never change, with many other important properties detailed at
ImmutableCollection.
See the Guava User Guide article on immutable collections.
ImmutableMap,
ImmutableSet,
Serialized Form| Modifier and Type | Class and Description |
|---|---|
static class |
ImmutableList.Builder<E>
A builder for creating immutable list instances, especially
public
static final lists ("constant lists"). |
| Modifier and Type | Method and Description |
|---|---|
void |
add(int index,
E element)
Deprecated.
Unsupported operation.
|
boolean |
addAll(int index,
java.util.Collection<? extends E> newElements)
Deprecated.
Unsupported operation.
|
ImmutableList<E> |
asList()
Returns this list instance.
|
static <E> ImmutableList.Builder<E> |
builder()
Returns a new builder.
|
boolean |
contains(java.lang.Object object) |
static <E> ImmutableList<E> |
copyOf(java.util.Collection<? extends E> elements)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
copyOf(E[] elements)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
copyOf(java.lang.Iterable<? extends E> elements)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
copyOf(java.util.Iterator<? extends E> elements)
Returns an immutable list containing the given elements, in order.
|
boolean |
equals(java.lang.Object obj) |
int |
hashCode() |
int |
indexOf(java.lang.Object object) |
UnmodifiableIterator<E> |
iterator()
Returns an unmodifiable iterator across the elements in this collection.
|
int |
lastIndexOf(java.lang.Object object) |
UnmodifiableListIterator<E> |
listIterator() |
UnmodifiableListIterator<E> |
listIterator(int index) |
static <E> ImmutableList<E> |
of()
Returns the empty immutable list.
|
static <E> ImmutableList<E> |
of(E element)
Returns an immutable list containing a single element.
|
static <E> ImmutableList<E> |
of(E e1,
E e2)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3,
E e4)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3,
E e4,
E e5)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8,
E e9)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8,
E e9,
E e10)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8,
E e9,
E e10,
E e11)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8,
E e9,
E e10,
E e11,
E e12,
E... others)
Returns an immutable list containing the given elements, in order.
|
E |
remove(int index)
Deprecated.
Unsupported operation.
|
ImmutableList<E> |
reverse()
Returns a view of this immutable list in reverse order.
|
E |
set(int index,
E element)
Deprecated.
Unsupported operation.
|
ImmutableList<E> |
subList(int fromIndex,
int toIndex)
Returns an immutable list of the elements between the specified
fromIndex, inclusive, and toIndex, exclusive. |
add, addAll, clear, remove, removeAll, retainAll, toArray, toArraypublic static <E> ImmutableList<E> of()
Collections.emptyList(), and is preferable mainly for consistency
and maintainability of your code.public static <E> ImmutableList<E> of(E element)
Collections.singleton(T), but will not
accept a null element. It is preferable mainly for consistency and
maintainability of your code.java.lang.NullPointerException - if element is nullpublic static <E> ImmutableList<E> of(E e1, E e2)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5, E e6)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9, E e10)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9, E e10, E e11)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9, E e10, E e11, E e12, E... others)
java.lang.NullPointerException - if any element is nullpublic static <E> ImmutableList<E> copyOf(java.lang.Iterable<? extends E> elements)
elements is a Collection, this method behaves exactly as
copyOf(Collection); otherwise, it behaves exactly as copyOf(elements.iterator().java.lang.NullPointerException - if any of elements is nullpublic static <E> ImmutableList<E> copyOf(java.util.Collection<? extends E> elements)
Despite the method name, this method attempts to avoid actually copying the data when it is safe to do so. The exact circumstances under which a copy will or will not be performed are undocumented and subject to change.
Note that if list is a List<String>, then ImmutableList.copyOf(list) returns an ImmutableList<String>
containing each of the strings in list, while
ImmutableList.of(list)} returns an ImmutableList<List<String>>
containing one element (the given list itself).
This method is safe to use even when elements is a synchronized
or concurrent collection that is currently being modified by another
thread.
java.lang.NullPointerException - if any of elements is nullpublic static <E> ImmutableList<E> copyOf(java.util.Iterator<? extends E> elements)
java.lang.NullPointerException - if any of elements is nullpublic static <E> ImmutableList<E> copyOf(E[] elements)
java.lang.NullPointerException - if any of elements is nullpublic UnmodifiableIterator<E> iterator()
ImmutableCollectionpublic UnmodifiableListIterator<E> listIterator()
listIterator in interface java.util.List<E>public UnmodifiableListIterator<E> listIterator(int index)
listIterator in interface java.util.List<E>public int indexOf(@Nullable
java.lang.Object object)
indexOf in interface java.util.List<E>public int lastIndexOf(@Nullable
java.lang.Object object)
lastIndexOf in interface java.util.List<E>public boolean contains(@Nullable
java.lang.Object object)
contains in interface java.util.Collection<E>contains in interface java.util.List<E>contains in class ImmutableCollection<E>public ImmutableList<E> subList(int fromIndex, int toIndex)
fromIndex, inclusive, and toIndex, exclusive. (If fromIndex and toIndex are equal, the empty immutable list is
returned.)subList in interface java.util.List<E>@Deprecated
public final boolean addAll(int index,
java.util.Collection<? extends E> newElements)
addAll in interface java.util.List<E>java.lang.UnsupportedOperationException - always@Deprecated public final E set(int index, E element)
set in interface java.util.List<E>java.lang.UnsupportedOperationException - always@Deprecated
public final void add(int index,
E element)
add in interface java.util.List<E>java.lang.UnsupportedOperationException - always@Deprecated public final E remove(int index)
remove in interface java.util.List<E>java.lang.UnsupportedOperationException - alwayspublic final ImmutableList<E> asList()
asList in class ImmutableCollection<E>public ImmutableList<E> reverse()
ImmutableList.of(1, 2, 3).reverse() is equivalent to ImmutableList.of(3, 2, 1).public boolean equals(@Nullable
java.lang.Object obj)
public int hashCode()
public static <E> ImmutableList.Builder<E> builder()
ImmutableList.Builder constructor.