Главная » Java » List

0

 

  Интерфейс расширяет интерфейс Collection и определяет коллекцию список (list), элементы которой размещаются в заданном порядке, — каждому элементу в пределах коллекции отводится определенная позиция с индексом, принимающим значения из интервала от 0 до list.size()-l. Отсюда следует, что контракты нескольких методов, унаследованных от Collection, должны быть изменены: при добавлении элемента посредством add тот помещается в конец списка; если из списка с помощью remove удаляется n-й элемент, элемент, следующий за удаленным, сдвигается к началу списка и занимает позицию с индексом n; методы toArray копируют элементы в массив в соответствии с порядком следования элементов в списке. (В сocтаве пакета java.util имеется и устаревший класс Vector, предназначенный для аналогичных целей, — обращайтесь к разделу  16.12.2)

     Интерфейс  содержит ряд дополнительных методов (они рассмотрены

ниже), приобретающих смысл в контексте списка элементов.

 

 

public Object get(int index)

Возвращает элемент, занимающий i ndex-ю позицию в списке.

public object set(int index,  object elem)

Возвращает содержимое элемента, расположенного на i ndex-й позиции в списке, и замещает его в списке значением elem. (Реализация метода в производных классах не обязательна.)

public void add(int index,  object el em)

Вставляет элемент elem на index-ю позицию в списке, сдвигая каждый последующий элемент на одну позицию в направлении конца списка. (Реализация метода в производных классах не обязательна.)

public Object  remove(int index)

Возвращает содержимое элемента, занимающего i ndex-ю позицию в списке, и удаляет этот элемент из списка, сдвигая каждый последующий элемент на одну позицию в направлении начала списка. (Реализация метода в производных классах не обязательна.)

public int indexOf(Object elem)

Возвращает индекс первого объекта в списке, равного (equal s) параметру elem, либо null, если elem равен null. Возвращает -1, если совпадения не обнаружены.

public int lastlndexof(Object elem)

Возвращает индекс последнего объекта в списке, равного (equal s) параметру elem, либо null, если elem равен null. Возвращает -1, если совпадения не обнаружены.

public sub(int min,   int max)

Возвращает частичный список, или курсор (view), текущего списка; в курсор включаются элементы списка, занимающие позиции от mi n до та (кроме элемента с индексом max). Например, при вызове subLi St(l, JJ будет возвращен список, содержащий элементы текущего списка с индексами 1, 2, 3 и 4. Содержимое курсора поддерживается коллекцией в актуальном состоянии: изменения, вносимые в курсор, отображаются в теку щем списке. Изменения, которые претерпевает текущий список, однако,не обязательно "видимы" посредством курсора и могут приводить к неопределенным результатам. Частичный список допускает выполнение тех же действий, которые позволены в отношении целого списка, и поэтому служит мощным инструментальным средством: вполне возможно, например, очистить фрагмент списка, выполнив инструкцию li St. SubLi st(min , max).clear().

public lterator listlterator(int index)

Возвращает объект lterator,  который позволяет осуществлять пошаговое перемещение по списку, начиная с элемента с индексом index.

public lterator listlterator()

Возвращает объект lterator, который позволяет осуществлять пошаговое перемещение по списку, начиная с элемента с индексом 0.

Все методы, которым передается аргумент i ndex, способны выбрасывать исключение типа IndexOutOfBoundsException, если значение  index отрицательно либо превышает величину size()-l.

  Пакет java.util содержит две реализации интерфейса — классы Array и Linked, рассмотренные в следующих разделах.

 

Источник: Арнолд, Кен, Гослинг, Джеймс, Холмс, Дэвид. Язык программирования Java. 3-е изд .. : Пер. с англ. – М. : Издательский дом «Вильяме», 2001. – 624 с. : ил. – Парал. тит. англ.

По теме:

  • Комментарии