Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class AbstractSequentialList<E> extends AbstractList<E>
Этот класс является противоположностью класса AbstractList в том смысле, что это реализует методы "произвольного доступа" (get(int index), set(int index, E element), add(int index, E element) и remove(int index)) сверху списка списка iterator, вместо наоборот.
Чтобы реализовать список, программист должен только расширить этот класс и обеспечить реализации для методов listIterator И size. Для неподдающегося изменению списка программист должен только реализовать iterator's списка hasNext, next, hasPrevious, методы previous И index.
Для поддающегося изменению списка программист должен дополнительно реализовать метод set iterator's списка. Поскольку список переменного размера программист должен дополнительно реализовать методы remove И add iterator's списка.
Программист должен обычно обеспечить пустоту (никакой параметр) и конструктор набора согласно рекомендации в спецификации интерфейса Collection.
Этот класс является элементом Платформы Наборов 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
protected AbstractSequentialList()
public E get(int index)
Эта реализация сначала получает список iterator указывающий на индексированный элемент (с listIterator(index)). Затем, это получает элемент, используя ListIterator.next и возвращает это.
get
в интерфейсе List<E>
get
в классе 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
в классе AbstractList<E>
index
- индекс элемента, чтобы заменитьelement
- элемент, который будет сохранен в указанной позицииUnsupportedOperationException
- если работа set не поддерживается этим спискомClassCastException
- если класс указанного элемента препятствует тому, чтобы это было добавлено к этому списку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
в классе AbstractList<E>
index
- индекс, по которому должен быть вставлен указанный элементelement
- элемент, который будет вставленUnsupportedOperationException
- если работа add не поддерживается этим спискомClassCastException
- если класс указанного элемента препятствует тому, чтобы это было добавлено к этому спискуNullPointerException
- если указанный элемент является нулем, и этот список не разрешает нулевые элементыIllegalArgumentException
- если некоторое свойство указанного элемента препятствует тому, чтобы это было добавлено к этому спискуIndexOutOfBoundsException
- если индекс испытывает недостаток диапазона (index < 0 || index > size())public E remove(int index)
Эта реализация сначала получает список iterator указывающий на индексированный элемент (с listIterator(index)). Затем, это удаляет элемент с ListIterator.remove.
Отметьте, что эта реализация бросит UnsupportedOperationException, если список iterator не реализует работу remove.
remove
в интерфейсе List<E>
remove
в классе 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
в классе AbstractList<E>
index
- индекс, по которому можно вставить первый элемент от указанного набораc
- набор, содержащий элементы, которые будут добавлены к этому спискуUnsupportedOperationException
- если работа addAll не поддерживается этим спискомClassCastException
- если класс элемента указанного набора препятствует тому, чтобы это было добавлено к этому спискуNullPointerException
- если указанный набор содержит один или более нулевых элементов, и этот список не разрешает нулевые элементы, или если указанный набор является нулемIllegalArgumentException
- если некоторое свойство элемента указанного набора препятствует тому, чтобы это было добавлено к этому спискуIndexOutOfBoundsException
- если индекс испытывает недостаток диапазона (index < 0 || index > size())public Iterator<E> iterator()
Эта реализация просто возвращает список iterator по списку.
public abstract ListIterator<E> listIterator(int index)
listIterator
в интерфейсе List<E>
listIterator
в классе AbstractList<E>
index
- индекс первого элемента, который будет возвращен из списка iterator (звонком next
метод)IndexOutOfBoundsException
- если индекс испытывает недостаток диапазона (index < 0 || index > size()
)
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.