@GwtCompatible(serializable=true, emulated=true) public abstract class ImmutableList<E> extends ImmutableCollection<E> implements List<E>, 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 FormModifier 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,
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(Object object) |
static <E> ImmutableList<E> |
copyOf(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(Iterable<? extends E> elements)
Returns an immutable list containing the given elements, in order.
|
static <E> ImmutableList<E> |
copyOf(Iterator<? extends E> elements)
Returns an immutable list containing the given elements, in order.
|
boolean |
equals(Object obj) |
void |
forEach(Consumer<? super E> consumer) |
int |
hashCode() |
int |
indexOf(Object object) |
UnmodifiableIterator<E> |
iterator()
Returns an unmodifiable iterator across the elements in this collection.
|
int |
lastIndexOf(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.
|
void |
replaceAll(UnaryOperator<E> operator)
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.
|
void |
sort(Comparator<? super E> c)
Deprecated.
Unsupported operation.
|
static <E> ImmutableList<E> |
sortedCopyOf(Comparator<? super E> comparator,
Iterable<? extends E> elements)
Returns an immutable list containing the given elements, in sorted order relative to the
specified comparator.
|
static <E extends Comparable<? super E>> |
sortedCopyOf(Iterable<? extends E> elements)
Returns an immutable list containing the given elements, sorted according to their natural
order.
|
Spliterator<E> |
spliterator() |
ImmutableList<E> |
subList(int fromIndex,
int toIndex)
Returns an immutable list of the elements between the specified
fromIndex , inclusive, and toIndex , exclusive. |
static <E> Collector<E,?,ImmutableList<E>> |
toImmutableList()
Returns a
Collector that accumulates the input elements into a new
ImmutableList , in encounter order. |
add, addAll, clear, remove, removeAll, removeIf, retainAll, toArray, toArray
containsAll, isEmpty, size, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
add, addAll, clear, containsAll, get, isEmpty, remove, removeAll, retainAll, size, toArray, toArray
parallelStream, removeIf, stream
@Beta public static <E> Collector<E,?,ImmutableList<E>> toImmutableList()
Collector
that accumulates the input elements into a new
ImmutableList
, in encounter order.public 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.NullPointerException
- if element
is nullpublic static <E> ImmutableList<E> of(E e1, E e2)
NullPointerException
- if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3)
NullPointerException
- if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4)
NullPointerException
- if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5)
NullPointerException
- if any element is nullpublic static <E> ImmutableList<E> of(E e1, E e2, E e3, E e4, E e5, E e6)
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)
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)
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)
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)
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)
NullPointerException
- if any element is null@SafeVarargs public 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)
NullPointerException
- if any element is nullpublic static <E> ImmutableList<E> copyOf(Iterable<? extends E> elements)
elements
is a Collection
, this method behaves exactly as
copyOf(Collection)
; otherwise, it behaves exactly as copyOf(elements.iterator()
.NullPointerException
- if any of elements
is nullpublic static <E> ImmutableList<E> copyOf(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.
NullPointerException
- if any of elements
is nullpublic static <E> ImmutableList<E> copyOf(Iterator<? extends E> elements)
NullPointerException
- if any of elements
is nullpublic static <E> ImmutableList<E> copyOf(E[] elements)
NullPointerException
- if any of elements
is nullpublic static <E extends Comparable<? super E>> ImmutableList<E> sortedCopyOf(Iterable<? extends E> elements)
If your data has no duplicates, or you wish to deduplicate elements, use ImmutableSortedSet.copyOf(elements)
; if you want a List
you can use its asList()
view.
Java 8 users: If you want to convert a Stream
to a sorted
ImmutableList
, use stream.sorted().collect(toImmutableList())
.
NullPointerException
- if any element in the input is nullpublic static <E> ImmutableList<E> sortedCopyOf(Comparator<? super E> comparator, Iterable<? extends E> elements)
If your data has no duplicates, or you wish to deduplicate elements, use ImmutableSortedSet.copyOf(comparator, elements)
; if you want a List
you can use its
asList()
view.
Java 8 users: If you want to convert a Stream
to a sorted
ImmutableList
, use stream.sorted(comparator).collect(toImmutableList())
.
NullPointerException
- if any element in the input is nullpublic UnmodifiableIterator<E> iterator()
ImmutableCollection
public UnmodifiableListIterator<E> listIterator()
listIterator
in interface List<E>
public UnmodifiableListIterator<E> listIterator(int index)
listIterator
in interface List<E>
public int lastIndexOf(@Nullable Object object)
lastIndexOf
in interface List<E>
public boolean contains(@Nullable Object object)
contains
in interface Collection<E>
contains
in interface 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.)@Deprecated public final boolean addAll(int index, Collection<? extends E> newElements)
addAll
in interface List<E>
UnsupportedOperationException
- always@Deprecated public final E set(int index, E element)
set
in interface List<E>
UnsupportedOperationException
- always@Deprecated public final void add(int index, E element)
add
in interface List<E>
UnsupportedOperationException
- always@Deprecated public final E remove(int index)
remove
in interface List<E>
UnsupportedOperationException
- always@Deprecated public final void replaceAll(UnaryOperator<E> operator)
replaceAll
in interface List<E>
UnsupportedOperationException
- always@Deprecated public final void sort(Comparator<? super E> c)
sort
in interface List<E>
UnsupportedOperationException
- alwayspublic final ImmutableList<E> asList()
asList
in class ImmutableCollection<E>
public Spliterator<E> spliterator()
spliterator
in interface Iterable<E>
spliterator
in interface Collection<E>
spliterator
in interface List<E>
spliterator
in class ImmutableCollection<E>
public ImmutableList<E> reverse()
ImmutableList.of(1, 2, 3).reverse()
is equivalent to ImmutableList.of(3, 2, 1)
.public int hashCode()
public static <E> ImmutableList.Builder<E> builder()
ImmutableList.Builder
constructor.Copyright © 2010–2017. All rights reserved.