Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class AbstractSequentialList<E> extends AbstractList<E>
Этот class является противоположностью AbstractList class в том смысле, что это реализует методы "произвольного доступа" (get(int index), set(int index, E element), add(int index, E element) и remove(int index)) сверху списка списка iterator, вместо наоборот.
Чтобы реализовать список, программист должен только расширить этот class и обеспечить реализации для методов listIterator И size. Для неподдающегося изменению списка программист должен только реализовать iterator's списка hasNext, next, hasPrevious, методы previous И index.
Для поддающегося изменению списка программист должен дополнительно реализовать метод set iterator's списка. Поскольку список переменного размера программист должен дополнительно реализовать методы remove И add iterator's списка.
Программист должен обычно обеспечить пустоту (никакой параметр) и конструктор набора согласно рекомендации в спецификации интерфейса Collection.
Этот class является элементом Платформы Наборов Java.
Collection
, List
, AbstractList
, AbstractCollection
modCount
Модификатор | Конструктор и Описание |
---|---|
protected |
AbstractSequentialList()
Единственный конструктор.
|
Модификатор и Тип | Метод и Описание |
---|---|
void |
add(int index, E element)
Вставляет указанный элемент в указанной позиции в этом списке (дополнительная работа).
|
boolean |
addAll(int index, Collection<? extends E> c)
Вставляет все элементы в указанном наборе в этот список в указанной позиции (дополнительная работа).
|
E |
get(int index)
Возвращает элемент в указанной позиции в этом списке.
|
Iterator<E> |
iterator()
Возвращает iterator по элементам в этом списке (в надлежащей последовательности).
|
abstract ListIterator<E> |
listIterator(int index)
Возвращает список iterator по элементам в этом списке (в надлежащей последовательности).
|
E |
remove(int index)
Удаляет элемент в указанной позиции в этом списке (дополнительная работа).
|
E |
set(int index, E element)
Заменяет элемент в указанной позиции в этом списке с указанным элементом (дополнительная работа).
|
add, clear, equals, hashCode, indexOf, lastIndexOf, listIterator, removeRange, subList
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, size, toArray, toArray, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
addAll, contains, containsAll, isEmpty, remove, removeAll, replaceAll, retainAll, size, sort, spliterator, toArray, toArray
parallelStream, removeIf, stream
forEach
protected AbstractSequentialList()
public E get(int index)
Эта реализация сначала получает список iterator указывающий на индексированный элемент (с listIterator(index)). Затем, это получает элемент, используя ListIterator.next и возвращает это.
get
в интерфейсе List<E>
get
в class AbstractList<E>
index
- индексируйте элемента, чтобы возвратитьсяIndexOutOfBoundsException
- если индексирование испытывает недостаток диапазона (index < 0 || index >= size())public E set(int index, E element)
Эта реализация сначала получает список iterator указывающий на индексированный элемент (с listIterator(index)). Затем, это получает текущий элемент, используя ListIterator.next и заменяет это ListIterator.set.
Отметьте, что эта реализация бросит UnsupportedOperationException, если список iterator не реализует работу set.
set
в интерфейсе List<E>
set
в class AbstractList<E>
index
- индексируйте элемента, чтобы заменитьelement
- элемент, который будет сохранен в указанной позицииUnsupportedOperationException
- если работа set не поддерживается этим спискомClassCastException
- если class указанного элемента препятствует тому, чтобы это было добавлено к этому спискуNullPointerException
- если указанный элемент является нулем, и этот список не разрешает нулевые элементыIllegalArgumentException
- если некоторое свойство указанного элемента препятствует тому, чтобы это было добавлено к этому спискуIndexOutOfBoundsException
- если индексирование испытывает недостаток диапазона (index < 0 || index >= size())public void add(int index, E element)
Эта реализация сначала получает список iterator указывающий на индексированный элемент (с listIterator(index)). Затем, это вставляет указанный элемент с ListIterator.add.
Отметьте, что эта реализация бросит UnsupportedOperationException, если список iterator не реализует работу add.
add
в интерфейсе List<E>
add
в class AbstractList<E>
index
- индексируйте, в котором должен быть вставлен указанный элементelement
- элемент, который будет вставленUnsupportedOperationException
- если работа add не поддерживается этим спискомClassCastException
- если class указанного элемента препятствует тому, чтобы это было добавлено к этому спискуNullPointerException
- если указанный элемент является нулем, и этот список не разрешает нулевые элементыIllegalArgumentException
- если некоторое свойство указанного элемента препятствует тому, чтобы это было добавлено к этому спискуIndexOutOfBoundsException
- если индексирование испытывает недостаток диапазона (index < 0 || index > size())public E remove(int index)
Эта реализация сначала получает список iterator указывающий на индексированный элемент (с listIterator(index)). Затем, это удаляет элемент с ListIterator.remove.
Отметьте, что эта реализация бросит UnsupportedOperationException, если список iterator не реализует работу remove.
remove
в интерфейсе List<E>
remove
в class AbstractList<E>
index
- индексирование элемента, который будет удаленUnsupportedOperationException
- если работа remove не поддерживается этим спискомIndexOutOfBoundsException
- если индексирование испытывает недостаток диапазона (index < 0 || index >= size())public boolean addAll(int index, Collection<? extends E> c)
Эта реализация получает iterator по указанному набору и списку iterator по этому списку, указывающему на индексированный элемент (с listIterator(index)). Затем, это выполняет итерации по указанному набору, вставляя элементы, полученные из iterator в этот список, по одному, используя ListIterator.add, сопровождаемый ListIterator.next (чтобы перескочить через добавленный элемент).
Отметьте, что эта реализация бросит UnsupportedOperationException, если список iterator возвращенный методом listIterator не реализует работу add.
addAll
в интерфейсе List<E>
addAll
в class AbstractList<E>
index
- индексируйте, в котором можно вставить первый элемент от указанного набораc
- набор, содержащий элементы, которые будут добавлены к этому спискуUnsupportedOperationException
- если работа addAll не поддерживается этим спискомClassCastException
- если class элемента указанного набора препятствует тому, чтобы это было добавлено к этому спискуNullPointerException
- если указанный набор содержит один или более нулевых элементов, и этот список не разрешает нулевые элементы, или если указанный набор является нулемIllegalArgumentException
- если некоторое свойство элемента указанного набора препятствует тому, чтобы это было добавлено к этому спискуIndexOutOfBoundsException
- если индексирование испытывает недостаток диапазона (index < 0 || index > size())public Iterator<E> iterator()
Эта реализация просто возвращает список iterator по списку.
public abstract ListIterator<E> listIterator(int index)
listIterator
в интерфейсе List<E>
listIterator
в class AbstractList<E>
index
- индексируйте первого элемента, который будет возвращен из списка iterator (звонком next
метод)IndexOutOfBoundsException
- если индексирование испытывает недостаток диапазона (index < 0 || index > size()
)
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92