Spec-Zone.ru › OpenJDK 17

Класс 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(E[] toCopyIn)
Создаёт список, содержащий копию заданного массива.
CopyOnWriteArrayList(Collection<? extends E> c)
Создаёт список, содержащий элементы указанной коллекции в порядке, в котором они возвращаются итератором коллекции.

Краткое описание методов

Модификатор и тип Метод Описание
void add(int index, E element)
Вставляет указанный элемент в указанную позицию в этом списке.
boolean add(E e)
Добавляет указанный элемент в конец этого списка.
boolean addAll(int index, Collection<? extends E> c)
Вставляет все элементы из указанной коллекции в этот список, начиная с указанной позиции.
boolean addAll(Collection<? extends E> c)
Добавляет все элементы из указанной коллекции в конец этого списка в том порядке, в котором они возвращаются итератором указанной коллекции.
int addAllAbsent(Collection<? extends E> c)
Добавляет все элементы из указанной коллекции, которые ещё не содержатся в этом списке, в конец этого списка в порядке, в котором они возвращаются итератором указанной коллекции.
boolean addIfAbsent(E e)
Добавляет элемент, если он отсутствует.
void clear()
Удаляет все элементы из этого списка.
Object clone()
Возвращает поверхностную копию этого списка.
boolean contains(Object o)
Возвращает true, если этот список содержит указанный элемент.
boolean containsAll(Collection<?> c)
Возвращает true, если этот список содержит все элементы указанной коллекции.
boolean equals(Object o)
Сравнивает указанный объект с этим списком на равенство.
void forEach(Consumer<? super E> action)
Выполняет заданное действие для каждого элемента Iterable до тех пор, пока все элементы не будут обработаны или действие не выбросит исключение.
E get(int index)
Возвращает элемент в указанной позиции в этом списке.
int hashCode()
Возвращает значение хэш-кода для этого списка.
int indexOf(E e, int index)
Возвращает индекс первого вхождения указанного элемента в этом списке, выполняя поиск вперёд с index, или возвращает -1, если элемент не найден.
int indexOf(Object o)
Возвращает индекс первого вхождения указанного элемента в этом списке или -1, если этот список не содержит элемент.
boolean isEmpty()
Возвращает true, если этот список не содержит элементов.
Iterator<E> iterator()
Возвращает итератор по элементам в этом списке в правильной последовательности.
int lastIndexOf(E e, int index)
Возвращает индекс последнего вхождения указанного элемента в этом списке, выполняя поиск назад с index, или возвращает -1, если элемент не найден.
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)
Удаляет все элементы этой коллекции, которые удовлетворяют заданному предикату.
boolean retainAll(Collection<?> c)
Оставляет только элементы в этом списке, которые содержатся в указанной коллекции.
E set(int index, E element)
Заменяет элемент в указанной позиции в этом списке указанным элементом.
int size()
Возвращает количество элементов в этом списке.
Spliterator<E> spliterator()
Возвращает Spliterator по элементам в этом списке.
List<E> subList(int fromIndex, int toIndex)
Возвращает представление части этого списка между fromIndex, включительно, и toIndex, исключая.
Object[] toArray()
Возвращает массив, содержащий все элементы в этом списке в правильной последовательности (с первого по последний элемент).
<T> T[] toArray(T[] a)
Возвращает массив, содержащий все элементы в этом списке в правильной последовательности (с первого по последний элемент); тип времени выполнения возвращаемого массива — тип указанного массива.
String toString()
Возвращает строковое представление этого списка.

Методы, объявленные в классе java.lang.Object

finalize, getClass, notify, notifyAll, wait, wait, wait

Методы, объявленные в интерфейсе java.util.Collection

parallelStream, stream, toArray

Методы, объявленные в интерфейсе java.util.List

replaceAll, sort

Подробное описание конструкторов

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, если и только если этот список содержит по крайней мере один элемент e, такой что Objects.equals(o, e).
Определено в:
contains в интерфейсе Collection<E>
Определено в:
contains в интерфейсе List<E>
Параметры:
o - элемент, присутствие которого в этом списке необходимо проверить
Возвращает:
true если этот список содержит указанный элемент

indexOf

public int indexOf(Object o)
Возвращает индекс первого вхождения указанного элемента в этот список или -1, если этот список не содержит элемент. Более формально, возвращает наименьший индекс i, такой что Objects.equals(o, get(i)), или -1, если такого индекса нет.
Определено в:
indexOf в интерфейсе List<E>
Параметры:
o - элемент, который нужно найти
Возвращает:
индекс первого вхождения указанного элемента в этот список или -1, если этот список не содержит элемент

indexOf

public int indexOf(E e, int index)
Возвращает индекс первого вхождения указанного элемента в этот список, начиная поиск с index, или возвращает -1, если элемент не найден. Более формально, возвращает наименьший индекс i, такой что i >= index && Objects.equals(get(i), e), или -1, если такого индекса нет.
Параметры:
e - элемент для поиска
index - индекс, с которого следует начать поиск
Возвращает:
индекс первого вхождения элемента в этот список с позиции index или позже в списке; -1 если элемент не найден.
Исключения:
IndexOutOfBoundsException - если указанный индекс отрицательный

lastIndexOf

public int lastIndexOf(Object o)
Возвращает индекс последнего вхождения указанного элемента в этот список или -1, если этот список не содержит элемент. Более формально, возвращает наибольший индекс i, такой что Objects.equals(o, get(i)), или -1, если такого индекса нет.
Определено в:
lastIndexOf в интерфейсе List<E>
Параметры:
o - элемент для поиска
Возвращает:
индекс последнего вхождения указанного элемента в этот список, или -1, если этот список не содержит элемент

lastIndexOf

public int lastIndexOf(E e, int index)
Возвращает индекс последнего вхождения указанного элемента в этот список, выполняя поиск в обратном порядке с index, или возвращает -1, если элемент не найден. Более формально, возвращает наибольший индекс i, такой что i <= index && Objects.equals(get(i), e), или -1, если такого индекса нет.
Параметры:
e - элемент для поиска
index - индекс, с которого следует начать поиск в обратном порядке
Возвращает:
индекс последнего вхождения элемента на позиции меньше или равной index в этом списке; -1, если элемент не найден.
Исключения:
IndexOutOfBoundsException - если указанный индекс больше или равен текущему размеру этого списка

clone

public Object clone()
Возвращает поверхностную копию этого списка. (Сами элементы не копируются.)
Переопределяет:
clone в классе Object
Возвращает:
клонированный список
См. также:
  • Cloneable

toArray

public Object[] toArray()
Возвращает массив, содержащий все элементы этого списка в правильной последовательности (от первого до последнего элемента).

Возвращаемый массив будет «безопасным», поскольку на него не ссылается этот список. (Другими словами, этот метод должен выделять новый массив). Таким образом, вызывающая сторона свободна изменять возвращаемый массив.

Этот метод действует как мост между API на основе массивов и API на основе коллекций.

Определено в:
toArray в интерфейсе Collection<E>
Определено в:
toArray в интерфейсе List<E>
Возвращает:
массив, содержащий все элементы этого списка
См. также:
  • Arrays.asList(Object[])

toArray

public <T> T[] toArray(T[] a)
Возвращает массив, содержащий все элементы этого списка в правильной последовательности (от первого до последнего элемента); тип времени выполнения возвращаемого массива — тип указанного массива. Если список помещается в указанный массив, он возвращается в нём. В противном случае для этой цели выделяется новый массив с типом времени выполнения указанного массива и размером этого списка.

Если этот список помещается в указанный массив с избытком (т. е. массив имеет больше элементов, чем этот список), элемент в массиве сразу после конца списка устанавливается в null. (Это полезно для определения длины этого списка только, если вызывающая сторона знает, что этот список не содержит никаких нулевых элементов.)

Подобно методу toArray(), этот метод служит мостом между API на основе массивов и API на основе коллекций. Кроме того, этот метод позволяет точно контролировать тип времени выполнения массива вывода и, в определённых случаях, может быть использован для экономии затрат на выделение памяти.

Предположим, что x — это список, известный тем, что содержит только строки. Следующий код может быть использован для выгрузки списка в новый массив типа String:

 String[] y = x.toArray(new String[0]);
Обратите внимание, что toArray(new Object[0]) идентично по функции toArray().
Определено в:
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)
Добавляет указанный элемент в конец этого списка.
Specified by:
add в интерфейсе Collection<E>
Specified by:
add в интерфейсе List<E>
Parameters:
e - элемент, который нужно добавить в этот список
Returns:
true (как указано в Collection.add(E))

add

public void add(int index, E element)
Вставляет указанный элемент в указанную позицию в этом списке. Смещает элемент, который в данный момент находится в этой позиции (если таковой имеется), и все последующие элементы вправо (увеличивает их индексы на единицу).
Specified by:
add в интерфейсе List<E>
Parameters:
index - индекс, в который нужно вставить указанный элемент
element - элемент, который нужно вставить
Throws:
IndexOutOfBoundsException - если индекс выходит за пределы диапазона (index < 0 || index > size())

remove

public E remove(int index)
Удаляет элемент в указанной позиции в этом списке. Смещает все последующие элементы влево (уменьшает их индексы на единицу). Возвращает элемент, удалённый из списка.
Specified by:
remove в интерфейсе List<E>
Parameters:
index - индекс элемента, который нужно удалить
Returns:
элемент, который ранее находился в указанной позиции
Throws:
IndexOutOfBoundsException - если индекс выходит за пределы диапазона (index < 0 || index >= size())

remove

public boolean remove(Object o)
Удаляет первое вхождение указанного элемента из этого списка, если он присутствует. Если в этом списке элемента нет, то он остаётся неизменным. Более формально, удаляет элемент с наименьшим индексом i таким, что Objects.equals(o, get(i)) (если такой элемент существует). Возвращает true , если в этом списке был указанный элемент (или, эквивалентно, если список изменился в результате вызова).
Specified by:
remove в интерфейсе Collection<E>
Specified by:
remove в интерфейсе List<E>
Parameters:
o - элемент, который нужно удалить из этого списка, если он присутствует
Returns:
true если в этом списке был указанный элемент

addIfAbsent

public boolean addIfAbsent(E e)
Добавляет элемент, если он отсутствует.
Parameters:
e - элемент, который нужно добавить в этот список, если он отсутствует
Returns:
true если элемент был добавлен

containsAll

public boolean containsAll(Collection<?> c)
Возвращает true , если этот список содержит все элементы указанного набора.
Specified by:
containsAll в интерфейсе Collection<E>
Specified by:
containsAll в интерфейсе List<E>
Parameters:
c - набор, для проверки на включение элементов в этот список
Returns:
true если этот список содержит все элементы указанного набора
Throws:
NullPointerException - если указанный набор равен null
See Also:
  • contains(Object)

removeAll

public boolean removeAll(Collection<?> c)
Удаляет из этого списка все элементы, которые содержатся в указанном наборе. Это особенно дорогостоящая операция в этом классе из-за необходимости внутреннего временного массива.
Specified by:
removeAll в интерфейсе Collection<E>
Specified by:
removeAll в интерфейсе List<E>
Parameters:
c - набор, содержащий элементы, которые нужно удалить из этого списка
Returns:
true если этот список изменился в результате вызова
Throws:
ClassCastException - если класс элемента этого списка несовместим с указанным набором (необязательно)
NullPointerException - если этот список содержит null-элемент, а указанный набор не допускает null-элементов (необязательно), или если указанный набор равен null
See Also:
  • remove(Object)

retainAll

public boolean retainAll(Collection<?> c)
Оставляет только те элементы в этом списке, которые содержатся в указанном наборе. Другими словами, удаляет из этого списка все элементы, которые не содержатся в указанном наборе.
Specified by:
retainAll в интерфейсе Collection<E>
Specified by:
retainAll в интерфейсе List<E>
Parameters:
c - набор, содержащий элементы, которые нужно сохранить в этом списке
Returns:
true если этот список изменился в результате вызова
Throws:
ClassCastException - если класс элемента этого списка несовместим с указанным набором (необязательно)
NullPointerException - если этот список содержит null-элемент, а указанный набор не допускает null-элементов (необязательно), или если указанный набор равен null
See Also:
  • remove(Object)

addAllAbsent

public int addAllAbsent(Collection<? extends E> c)
Добавляет в конец этого списка все элементы из указанного набора, которые ещё не содержатся в этом списке, в порядке, в котором они возвращаются итератором указанного набора.
Parameters:
c - набор, содержащий элементы, которые нужно добавить в этот список
Returns:
количество добавленных элементов
Throws:
NullPointerException - если указанный набор равен null
See Also:
  • addIfAbsent(Object)

clear

public void clear()
Удаляет все элементы из этого списка. Список будет пустым после возврата этого вызова.
Specified by:
clear в интерфейсе Collection<E>
Specified by:
clear в интерфейсе List<E>

addAll

public boolean addAll(Collection<? extends E> c)
Добавляет все элементы из указанного набора в конец этого списка в порядке, в котором они возвращаются итератором указанного набора.
Specified by:
addAll в интерфейсе Collection<E>
Specified by:
addAll в интерфейсе List<E>
Parameters:
c - набор, содержащий элементы, которые нужно добавить в этот список
Returns:
true если этот список изменился в результате вызова
Throws:
NullPointerException - если указанный набор равен null
See Also:
  • add(Object)

addAll

public boolean addAll(int index, Collection<? extends E> c)
Вставляет все элементы из указанного набора в этот список, начиная с указанной позиции. Смещает элемент, который в данный момент находится в этой позиции (если таковой имеется), и все последующие элементы вправо (увеличивает их индексы). Новые элементы будут отображаться в этом списке в порядке, в котором они возвращаются итератором указанного набора.
Specified by:
addAll в интерфейсе List<E>
Parameters:
index - индекс, с которого нужно вставить первые элементы из указанного набора
c - набор, содержащий элементы, которые нужно добавить в этот список
Returns:
true если этот список изменился в результате вызова
Throws:
IndexOutOfBoundsException - если индекс выходит за пределы диапазона (index < 0 || index > size())
NullPointerException - если указанный набор равен null
See Also:
  • add(int,Object)

forEach

public void forEach(Consumer<? super E> action)
Описание скопировано из интерфейса: Iterable
Выполняет заданное действие для каждого элемента Iterable , пока все элементы не будут обработаны или действие не выбросит исключение. Действия выполняются в порядке итерации, если этот порядок указан. Исключения, выброшенные действием, передаются вызывающей стороне.

Поведение этого метода не определено, если действие выполняет побочные эффекты, которые изменяют базовый источник элементов, если только переопределяемый класс не указал политику одновременного изменения.

Specified by:
forEach в интерфейсе Iterable<E>
Parameters:
action - действие, которое нужно выполнить для каждого элемента
Throws:
NullPointerException - если указанное действие равно null

removeIf

public boolean removeIf(Predicate<? super E> filter)
Описание скопировано из интерфейса: Collection
Удаляет все элементы этого набора, удовлетворяющие заданному предикату. Ошибки или исключения времени выполнения, возникающие во время итерации или в предикате, передаются вызывающей стороне.
Определено в:
removeIf в интерфейсе Collection<E>
Параметры:
filter - предикат, возвращающий true для удаляемых элементов
Возвращает:
true если какие-либо элементы были удалены
Исключения:
NullPointerException - если указанный фильтр равен null

toString

public String toString()
Возвращает строковое представление этого списка. Строковое представление состоит из строковых представлений элементов списка в порядке их возврата итератором, заключенных в квадратные скобки ("[]"). Смежные элементы разделяются символами ", " (запятая и пробел). Элементы преобразуются в строки с помощью String.valueOf(Object).
Переопределяет:
toString в классе Object
Возвращает:
строковое представление этого списка

equals

public boolean equals(Object o)
Сравнивает указанный объект с этим списком на равенство. Возвращает true если указанный объект является тем же объектом, что и этот объект, или если это также List и последовательность элементов, возвращаемых итератором над указанным списком, совпадает с последовательностью, возвращаемой итератором над этим списком. Две последовательности считаются одинаковыми, если они имеют одинаковую длину и соответствующие элементы в той же позиции в последовательности являются равными. Два элемента e1 и e2 считаются равными, если Objects.equals(e1, 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 в интерфейсе Collection<E>
Определено в:
iterator в интерфейсе Iterable<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 в интерфейсе Collection<E>
Определено в:
spliterator в интерфейсе Iterable<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, 2021, 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.
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/concurrent/CopyOnWriteArrayList.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API