Класс CopyOnWriteArrayList<E>
- java.lang.Object
-
- java.util.concurrent.CopyOnWriteArrayList<E>
- Type Parameters:
-
E- тип элементов, хранимых в этом наборе
- All Implemented Interfaces:
- Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, RandomAccess
public class CopyOnWriteArrayList<E> extends Object implements List<E>, RandomAccess, Cloneable, Serializable
Потокобезопасная версия класса ArrayList, в которой все изменяющие операции (add, set, и т. д.) реализуются путём создания свежей копии базового массива.
Обычно это слишком дорого, но может быть более эффективным, чем альтернативы, когда операции обхода значительно превосходят операции изменения, и полезно, когда вы не можете или не хотите синхронизировать обходы, но вам необходимо предотвратить вмешательство между конкурирующими потоками. Метод итератора "снимок" использует ссылку на состояние массива на момент создания итератора. Этот массив никогда не изменяется во время существования итератора, поэтому конфликты невозможны, и гарантируется, что итератор не выбросит ConcurrentModificationException. Итератор не будет отражать добавления, удаления или изменения в списке после создания итератора. Операции изменения элементов на самих итераторах (remove, set, и add) не поддерживаются. Эти методы выбрасывают UnsupportedOperationException.
Разрешены все элементы, включая null.
Эффекты согласованности памяти: Как и в других коллекциях с конкурентным доступом, действия в потоке до помещения объекта в CopyOnWriteArrayList предшествуют последующим действиям доступа или удаления этого элемента из CopyOnWriteArrayList в другом потоке.
Этот класс является частью Java Collections Framework.
- Since:
- 1.5
- See Also:
- Serialized Form
Конструкторы
| Конструктор и описание |
|---|
CopyOnWriteArrayList() Создаёт пустой список. |
CopyOnWriteArrayList(Collection<? extends E> c) Создаёт список, содержащий элементы указанной коллекции в порядке, в котором они возвращаются итератором коллекции. |
CopyOnWriteArrayList(E[] toCopyIn) Создаёт список, содержащий копию заданного массива. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
boolean |
add(E e) Добавляет указанный элемент в конец этого списка. |
void |
add(int index,
E element) Вставляет указанный элемент в указанную позицию в этом списке. |
boolean |
addAll(Collection<? extends E> c) Добавляет все элементы указанной коллекции в конец этого списка в том порядке, в котором они возвращаются итератором указанной коллекции. |
boolean |
addAll(int index,
Collection<? extends E> c) Вставляет все элементы указанной коллекции в этот список, начиная с указанной позиции. |
int |
addAllAbsent(Collection<? extends E> c) Добавляет все элементы из указанной коллекции, которые ещё не содержатся в этом списке, в конец этого списка в порядке, в котором они возвращаются итератором указанной коллекции. |
boolean |
addIfAbsent(E e) Добавляет элемент, если он отсутствует. |
void |
clear() Удаляет все элементы из этого списка. |
Object |
clone() Возвращает поверхностную копию этого списка. |
boolean |
contains(Object o) Возвращает |
boolean |
containsAll(Collection<?> c) Возвращает |
boolean |
equals(Object o) Сравнивает указанный объект с этим списком на равенство. |
void |
forEach(Consumer<? super E> action) Применяет заданное действие к каждому элементу |
E |
get(int index) Возвращает элемент по указанной позиции в этом списке. |
int |
hashCode() Возвращает значение хэш-кода для этого списка. |
int |
indexOf(E e,
int index) Возвращает индекс первого вхождения указанного элемента в этом списке, выполняя поиск вперёд с |
int |
indexOf(Object o) Возвращает индекс первого вхождения указанного элемента в этом списке, или -1, если этот список не содержит элемент. |
boolean |
isEmpty() Возвращает |
Iterator<E> |
iterator() Возвращает итератор по элементам в этом списке в правильной последовательности. |
int |
lastIndexOf(E e,
int index) Возвращает индекс последнего вхождения указанного элемента в этом списке, выполняя поиск назад с |
int |
lastIndexOf(Object o) Возвращает индекс последнего вхождения указанного элемента в этом списке, или -1, если этот список не содержит элемент. |
ListIterator<E> |
listIterator() Возвращает итератор списка по элементам в этом списке (в правильной последовательности). |
ListIterator<E> |
listIterator(int index) Возвращает итератор списка по элементам в этом списке (в правильной последовательности), начиная с указанной позиции в списке. |
E |
remove(int index) Удаляет элемент по указанной позиции в этом списке. |
boolean |
remove(Object o) Удаляет первое вхождение указанного элемента из этого списка, если он присутствует. |
boolean |
removeAll(Collection<?> c) Удаляет из этого списка все его элементы, которые содержатся в указанной коллекции. |
boolean |
removeIf(Predicate<? super E> filter) Удаляет все элементы этой коллекции, удовлетворяющие заданному предикату. |
void |
replaceAll(UnaryOperator<E> operator) Заменяет каждый элемент этого списка результатом применения оператора к этому элементу. |
boolean |
retainAll(Collection<?> c) Оставляет только элементы в этом списке, которые содержатся в указанной коллекции. |
E |
set(int index,
E element) Заменяет элемент в указанной позиции в этом списке указанным элементом. |
int |
size() Возвращает количество элементов в этом списке. |
void |
sort(Comparator<? super E> c) Сортирует этот список в соответствии с порядком, заданным указанным |
Spliterator<E> |
spliterator() Возвращает |
Object[] |
toArray() Возвращает представление части этого списка между |
<T> T[] |
toArray(T[] a) Возвращает массив, содержащий все элементы в этом списке в правильной последовательности (от первого до последнего элемента). |
String |
toString() Возвращает массив, содержащий все элементы в этом списке в правильной последовательности (от первого до последнего элемента); тип возвращаемого массива — тип указанного массива. |
String |
toString() Возвращает строковое представление этого списка. |
Методы, унаследованные от класса java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait Методы, унаследованные от интерфейса java.util.Collection
parallelStream, stream Конструкторы
CopyOnWriteArrayList
public CopyOnWriteArrayList()
Создаёт пустой список.
CopyOnWriteArrayList
public CopyOnWriteArrayList(Collection<? extends E> c)
Создаёт список, содержащий элементы указанного набора в порядке, в котором они возвращаются итератором набора.
- Параметры:
-
c- набор изначально содержащихся элементов - Исключения:
-
NullPointerException- если указанный набор равен null
CopyOnWriteArrayList
public CopyOnWriteArrayList(E[] toCopyIn)
Создаёт список, содержащий копию заданного массива.
- Параметры:
-
toCopyIn- массив (копия этого массива используется в качестве внутреннего массива) - Исключения:
-
NullPointerException- если указанный массив равен null
Методы
size
public int size()
Возвращает количество элементов в этом списке.
- Определено в:
-
sizeв интерфейсеCollection<E> - Определено в:
-
sizeв интерфейсеList<E> - Возвращает:
- количество элементов в этом списке
isEmpty
public boolean isEmpty()
Возвращает true, если этот список не содержит элементов.
- Определено в:
-
isEmptyв интерфейсеCollection<E> - Определено в:
-
isEmptyв интерфейсеList<E> - Возвращает:
- true, если этот список не содержит элементов
contains
public boolean contains(Object o)
Возвращает true, если этот список содержит указанный элемент. Более формально, возвращает true, если и только если этот список содержит по меньшей мере один элемент , такой что .
- Определено в:
-
containsв интерфейсеCollection<E> - Определено в:
-
containsв интерфейсеList<E> - Параметры:
-
o- элемент, присутствие которого в этом списке необходимо проверить - Возвращает:
- true, если этот список содержит указанный элемент
indexOf
public int indexOf(Object o)
Возвращает индекс первого вхождения указанного элемента в этот список или -1, если этот список не содержит элемент. Более формально, возвращает наименьший индекс , такой что , или -1, если такого индекса нет.
- Определено в:
-
indexOfв интерфейсеList<E> - Параметры:
-
o- элемент для поиска - Возвращает:
- индекс первого вхождения указанного элемента в этот список или -1, если этот список не содержит элемент
indexOf
public int indexOf(E e,
int index) Возвращает индекс первого вхождения указанного элемента в этот список, выполняя поиск вперёд с , или возвращает -1, если элемент не найден. Более формально, возвращает наименьший индекс , такой что , или -1, если такого индекса нет.
- Параметры:
-
e- элемент для поиска -
index- индекс, с которого следует начать поиск - Возвращает:
- индекс первого вхождения элемента в этот список с позиции или позже в списке; -1, если элемент не найден.
- Исключения:
-
IndexOutOfBoundsException- если указанный индекс отрицательный
lastIndexOf
public int lastIndexOf(Object o)
Возвращает индекс последнего вхождения указанного элемента в этот список или -1, если этот список не содержит элемент. Более формально, возвращает наивысший индекс , такой что , или -1, если такого индекса нет.
- Определено в:
-
lastIndexOfв интерфейсеList<E> - Параметры:
-
o- элемент для поиска - Возвращает:
- индекс последнего вхождения указанного элемента в этот список или -1, если этот список не содержит элемент
lastIndexOf
public int lastIndexOf(E e,
int index) Возвращает индекс последнего вхождения указанного элемента в этот список, выполняя поиск назад с , или возвращает -1, если элемент не найден. Более формально, возвращает наивысший индекс , такой что , или -1, если такого индекса нет.
- Параметры:
-
e- элемент для поиска -
index- индекс, с которого следует начать поиск назад - Возвращает:
- индекс последнего вхождения элемента с позиции меньше или равной в этом списке; -1, если элемент не найден.
- Исключения:
-
IndexOutOfBoundsException- если указанный индекс больше или равен текущему размеру этого списка
clone
public Object clone()
Возвращает неглубокую копию этого списка. (Сами элементы не копируются.)
toArray
public Object[] toArray()
Возвращает массив, содержащий все элементы этого списка в правильном порядке (с первого по последний элемент).
Возвращаемый массив будет «безопасным» в том смысле, что ссылки на него не сохраняются этим списком. (Другими словами, этот метод должен выделить новый массив). Таким образом, вызывающая сторона свободна изменять возвращаемый массив.
Этот метод служит мостом между основанными на массивах и основанными на коллекциях API.
- Определено в:
-
toArrayв интерфейсеCollection<E> - Определено в:
-
toArrayв интерфейсеList<E> - Возвращает:
- массив, содержащий все элементы в этом списке
- См. также:
Arrays.asList(Object[])
toArray
public <T> T[] toArray(T[] a)
Возвращает массив, содержащий все элементы этого списка в правильном порядке (с первого по последний элемент); тип времени выполнения возвращаемого массива — тип указанного массива. Если список помещается в указанный массив, он возвращается в нём. В противном случае выделяется новый массив с типом времени выполнения указанного массива и размером этого списка.
Если этот список помещается в указанный массив с избытком места (т. е. в массиве есть больше элементов, чем в этом списке), элемент в массиве сразу после конца списка устанавливается в null. (Это полезно для определения длины этого списка *только* если вызывающая сторона знает, что этот список не содержит каких-либо нулевых элементов.)
Как и метод , этот метод служит мостом между основанными на массивах и основанными на коллекциях API. Кроме того, этот метод позволяет точно контролировать тип времени выполнения выходного массива и может в определённых обстоятельствах использоваться для экономии расходов на выделение памяти.
Предположим, — это список, известно, что он содержит только строки. Следующий код может быть использован для выгрузки списка в новый массив типа String[]:
String[] y = x.toArray(new String[0]);Обратите внимание, что
toArray(new Object[0]) идентичен по функции .- Определено в:
-
toArrayв интерфейсеCollection<E> - Определено в:
-
toArrayв интерфейсеList<E> - Параметры типа:
-
T- тип времени выполнения массива, содержащего коллекцию - Параметры:
-
a- массив, в который должны быть помещены элементы списка, если он достаточно велик; в противном случае для этой цели выделяется новый массив того же типа времени выполнения. - Возвращает:
- массив, содержащий все элементы в этом списке
- Исключения:
-
ArrayStoreException- если тип времени выполнения указанного массива не является надтипом типа времени выполнения каждого элемента в этом списке -
NullPointerException- если указанный массив равен null
get
public E get(int index)
Возвращает элемент по указанной позиции в этом списке.
- Определено в:
-
getв интерфейсеList<E> - Параметры:
-
index- индекс возвращаемого элемента - Возвращает:
- элемент по указанной позиции в этом списке
- Исключения:
-
IndexOutOfBoundsException- если индекс находится вне диапазона (index < 0 || index >= size())
set
public E set(int index,
E element) Заменяет элемент по указанной позиции в этом списке указанным элементом.
- Определено в:
-
setв интерфейсеList<E> - Параметры:
-
index- индекс заменяемого элемента -
element- элемент, который должен быть сохранён по указанной позиции - Возвращает:
- элемент, который ранее находился по указанной позиции
- Исключения:
-
IndexOutOfBoundsException- если индекс находится вне диапазона (index < 0 || index >= size())
add
public boolean add(E e)
Добавляет указанный элемент в конец этого списка.
- Определено в:
-
addв интерфейсеCollection<E> - Определено в:
-
addв интерфейсеList<E> - Параметры:
-
e- элемент, который нужно добавить в этот список - Возвращает:
- true (как указано в )
add
public void add(int index,
E element) Вставляет указанный элемент по указанной позиции в этот список. Перемещает элемент, который в данный момент находится на этой позиции (если таковой имеется), и все последующие элементы вправо (увеличивает их индексы на единицу).
- Определено в:
-
addв интерфейсеList<E> - Параметры:
-
index- индекс, по которому должен быть вставлен указанный элемент -
element- вставляемый элемент - Исключения:
-
IndexOutOfBoundsException- если индекс находится вне диапазона (index < 0 || index > size())
remove
public E remove(int index)
Удаляет элемент в указанной позиции в этом списке. Сдвигает все последующие элементы влево (вычитает один из их индексов). Возвращает элемент, который был удален из списка.
- Указано в:
-
removeв интерфейсеList<E> - Параметры:
-
index- индекс удаляемого элемента - Возвращает:
- элемент, ранее находившийся в указанной позиции
- Выбрасывает:
-
IndexOutOfBoundsException- если индекс находится вне диапазона (index < 0 || index >= size())
remove
public boolean remove(Object o)
Удаляет первое вхождение указанного элемента из этого списка, если он присутствует. Если этот список не содержит элемент, он остается неизменным. Более формально, удаляет элемент с наименьшим индексом i таким образом, что (o==null ? get(i)==null : o.equals(get(i))) (если такой элемент существует). Возвращает true если этот список содержал указанный элемент (или эквивалентно, если этот список изменился в результате вызова).
- Указано в:
-
removeв интерфейсеCollection<E> - Указано в:
-
removeв интерфейсеList<E> - Параметры:
-
o- элемент, который необходимо удалить из этого списка, если он присутствует - Возвращает:
-
trueесли этот список содержал указанный элемент
addIfAbsent
public boolean addIfAbsent(E e)
Добавляет элемент, если он отсутствует.
- Параметры:
-
e- элемент, который необходимо добавить в этот список, если его нет - Возвращает:
-
trueесли элемент был добавлен
containsAll
public boolean containsAll(Collection<?> c)
Возвращает true если этот список содержит все элементы указанного набора.
- Указано в:
-
containsAllв интерфейсеCollection<E> - Указано в:
-
containsAllв интерфейсеList<E> - Параметры:
-
c- набор, который необходимо проверить на содержание в этом списке - Возвращает:
-
trueесли этот список содержит все элементы указанного набора - Выбрасывает:
-
NullPointerException- если указанный набор равен null - См. также:
contains(Object)
removeAll
public boolean removeAll(Collection<?> c)
Удаляет из этого списка все его элементы, которые содержатся в указанном наборе. Это особенно дорогостоящая операция в этом классе из-за необходимости внутренней временной таблицы.
- Указано в:
-
removeAllв интерфейсеCollection<E> - Указано в:
-
removeAllв интерфейсеList<E> - Параметры:
-
c- набор, содержащий элементы, которые необходимо удалить из этого списка - Возвращает:
-
trueесли этот список изменился в результате вызова - Выбрасывает:
-
ClassCastException- если класс элемента этого списка несовместим с указанным набором (необязательно) -
NullPointerException- если этот список содержит элемент null, а указанный набор не допускает элементов null (необязательно), или если указанный набор равен null - См. также:
remove(Object)
retainAll
public boolean retainAll(Collection<?> c)
Сохраняет только элементы в этом списке, которые содержатся в указанном наборе. Другими словами, удаляет из этого списка все его элементы, которые не содержатся в указанном наборе.
- Указано в:
-
retainAllв интерфейсеCollection<E> - Указано в:
-
retainAllв интерфейсеList<E> - Параметры:
-
c- набор, содержащий элементы, которые необходимо сохранить в этом списке - Возвращает:
-
trueесли этот список изменился в результате вызова - Выбрасывает:
-
ClassCastException- если класс элемента этого списка несовместим с указанным набором (необязательно) -
NullPointerException- если этот список содержит элемент null, а указанный набор не допускает элементов null (необязательно), или если указанный набор равен null - См. также:
remove(Object)
addAllAbsent
public int addAllAbsent(Collection<? extends E> c)
Добавляет все элементы в указанном наборе, которые еще не содержатся в этом списке, в конец этого списка в порядке, в котором они возвращаются итератором указанного набора.
- Параметры:
-
c- набор, содержащий элементы, которые необходимо добавить в этот список - Возвращает:
- количество добавленных элементов
- Выбрасывает:
-
NullPointerException- если указанный набор равен null - См. также:
addIfAbsent(Object)
clear
public void clear()
Удаляет все элементы из этого списка. Список будет пустым после возвращения этого вызова.
addAll
public boolean addAll(Collection<? extends E> c)
Добавляет все элементы в указанном наборе в конец этого списка в порядке, в котором они возвращаются итератором указанного набора.
- Указано в:
-
addAllв интерфейсеCollection<E> - Указано в:
-
addAllв интерфейсеList<E> - Параметры:
-
c- набор, содержащий элементы, которые необходимо добавить в этот список - Возвращает:
-
trueесли этот список изменился в результате вызова - Выбрасывает:
-
NullPointerException- если указанный набор равен null - См. также:
add(Object)
addAll
public boolean addAll(int index,
Collection<? extends E> c) Вставляет все элементы в указанном наборе в этот список, начиная с указанной позиции. Сдвигает элемент, который в настоящее время находится в этой позиции (если есть) и все последующие элементы вправо (увеличивает их индексы). Новые элементы будут появляться в этом списке в порядке, в котором они возвращаются итератором указанного набора.
- Указано в:
-
addAllв интерфейсеList<E> - Параметры:
-
index- индекс, с которого необходимо вставить первый элемент из указанного набора -
c- набор, содержащий элементы, которые необходимо добавить в этот список - Возвращает:
-
trueесли этот список изменился в результате вызова - Выбрасывает:
-
IndexOutOfBoundsException- если индекс находится вне диапазона (index < 0 || index > size()) -
NullPointerException- если указанный набор равен null - См. также:
add(int,Object)
forEach
public void forEach(Consumer<? super E> action)
Описание скопировано из интерфейса: Iterable
Выполняет заданное действие для каждого элемента Iterable до тех пор, пока все элементы не будут обработаны или действие не выбросит исключение. Если не указано иначе реализующим классом, действия выполняются в порядке итерации (если порядок итерации указан). Исключение, выброшенное действием, передается вызывающему методу.
- Указано в:
-
forEachв интерфейсеIterable<E> - Параметры:
-
action- действие, которое необходимо выполнить для каждого элемента
removeIf
public boolean removeIf(Predicate<? super E> filter)
Описание скопировано из интерфейса: Collection
Удаляет все элементы этого набора, которые удовлетворяют заданному предикату. Ошибки или исключения во время выполнения, выброшенные во время итерации или предикатом, передаются вызывающему методу.
- Указано в:
-
removeIfв интерфейсеCollection<E> - Параметры:
-
filter- предикат, который возвращаетtrueдля удаляемых элементов - Возвращает:
-
trueесли какие-либо элементы были удалены
replaceAll
public void replaceAll(UnaryOperator<E> operator)
Описание скопировано из интерфейса: List
Заменяет каждый элемент этого списка результатом применения оператора к этому элементу. Ошибки или исключения во время выполнения, выброшенные оператором, передаются вызывающему методу.
- Указано в:
-
replaceAllв интерфейсеList<E> - Параметры:
-
operator- оператор, применяемый к каждому элементу
sort
public void sort(Comparator<? super E> c)
Описание скопировано из интерфейса: List
Сортирует этот список в соответствии с порядком, индуцированным указанным Comparator.
Все элементы в этом списке должны быть взаимно сравнимы с использованием указанного компаратора (то есть, c.compare(e1, e2) не должен вызывать ClassCastException для любых элементов e1 и e2 в списке).
Если указанный компаратор равен null то все элементы в этом списке должны реализовывать интерфейс Comparable и должен использоваться естественный порядок элементов.
Этот список должен быть изменяемым, но не обязательно изменяемым по размеру.
- Указано в:
-
sortв интерфейсеList<E> - Параметры:
-
c-Comparatorиспользуется для сравнения элементов списка. Значениеnullуказывает на то, что должен использоваться естественный порядок элементов
toString
public String toString()
Возвращает строковое представление этого списка. Строковое представление состоит из строковых представлений элементов списка в порядке, в котором они возвращаются его итератором, заключённых в квадратные скобки ("[]"). Смежные элементы разделяются символами ", " (запятая и пробел). Элементы преобразуются в строки с помощью String.valueOf(Object).
equals
public boolean equals(Object o)
Сравнивает указанный объект с этим списком на равенство. Возвращает true, если указанный объект является тем же объектом, что и этот объект, или если это также List и последовательность элементов, возвращаемых итератором над указанным списком, совпадает с последовательностью, возвращаемой итератором над этим списком. Две последовательности считаются одинаковыми, если они имеют одинаковую длину и соответствующие элементы в одинаковых позициях в последовательности равны. Два элемента e1 и e2 считаются равными, если (e1==null ? e2==null : e1.equals(e2)).
- Определено в:
-
equalsв интерфейсеCollection<E> - Определено в:
-
equalsв интерфейсеList<E> - Переопределяет:
-
equalsв классеObject - Параметры:
-
o- объект, который нужно сравнить на равенство с этим списком - Возвращает:
-
true, если указанный объект равен этому списку - См. также:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Возвращает значение хэш-кода для этого списка.
Эта реализация использует определение в List.hashCode().
- Определено в:
-
hashCodeв интерфейсеCollection<E> - Определено в:
-
hashCodeв интерфейсеList<E> - Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для этого списка
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
iterator
public Iterator<E> iterator()
Возвращает итератор по элементам этого списка в правильном порядке.
Возвращаемый итератор предоставляет моментальную фотографию состояния списка на момент создания итератора. Синхронизация не требуется при прохождении по итератору. Итератор НЕ поддерживает метод remove.
- Определено в:
-
iteratorв интерфейсеIterable<E> - Определено в:
-
iteratorв интерфейсеCollection<E> - Определено в:
-
iteratorв интерфейсеList<E> - Возвращает:
- итератор по элементам этого списка в правильном порядке
listIterator
public ListIterator<E> listIterator()
Возвращает итератор списка по элементам этого списка (в правильном порядке).
Возвращаемый итератор предоставляет моментальную фотографию состояния списка на момент создания итератора. Синхронизация не требуется при прохождении по итератору. Итератор НЕ поддерживает методы remove, set или add.
- Определено в:
-
listIteratorв интерфейсеList<E> - Возвращает:
- итератор списка по элементам этого списка (в правильном порядке)
listIterator
public ListIterator<E> listIterator(int index)
Возвращает итератор списка по элементам этого списка (в правильном порядке), начиная с указанной позиции в списке. Указанный индекс указывает первый элемент, который будет возвращён начальным вызовом next. Начальный вызов previous вернёт элемент с указанным индексом минус один.
Возвращаемый итератор предоставляет моментальную фотографию состояния списка на момент создания итератора. Синхронизация не требуется при прохождении по итератору. Итератор НЕ поддерживает методы remove, set или add.
- Определено в:
-
listIteratorв интерфейсеList<E> - Параметры:
-
index- индекс первого элемента, который будет возвращён итератором списка (вызовомnext) - Возвращает:
- итератор списка по элементам этого списка (в правильном порядке), начиная с указанной позиции в списке
- Исключения:
-
IndexOutOfBoundsException- если индекс вне диапазона (index < 0 || index > size())
spliterator
public Spliterator<E> spliterator()
Возвращает Spliterator по элементам этого списка.
Этот Spliterator сообщает Spliterator.IMMUTABLE, Spliterator.ORDERED, Spliterator.SIZED и Spliterator.SUBSIZED.
Итератор предоставляет моментальную фотографию состояния списка на момент создания итератора. Синхронизация не требуется при работе с итератором.
- Определено в:
-
spliteratorв интерфейсеIterable<E> - Определено в:
-
spliteratorв интерфейсеCollection<E> - Определено в:
-
spliteratorв интерфейсеList<E> - Возвращает:
Spliteratorпо элементам этого списка- С тех пор:
- 1.8
subList
public List<E> subList(int fromIndex,
int toIndex) Возвращает представление части этого списка между fromIndex, включительно, и toIndex, исключая. Возвращаемый список поддерживается этим списком, поэтому изменения в возвращаемом списке отражаются в этом списке.
Семантика списка, возвращаемого этим методом, становится неопределённой, если базовый список (то есть этот список) изменяется каким-либо образом, отличным от изменения через возвращаемый список.
- Определено в:
-
subListв интерфейсеList<E> - Параметры:
-
fromIndex- нижняя граница (включительно) подсписка -
toIndex- верхняя граница (исключительно) подсписка - Возвращает:
- представление указанного диапазона в этом списке
- Исключения:
-
IndexOutOfBoundsException- для некорректного индекса конечной точки (fromIndex < 0 || toIndex > size || fromIndex > toIndex)
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.