Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

СТП / lec / java2014-lec-07

.pdf
Скачиваний:
6
Добавлен:
03.03.2016
Размер:
1.11 Mб
Скачать

Интерфейс Map

Maps – это фактически ассоциативные массивы.

Объект Map описывает отношения между ключами и значениями:

Дублирование ключей не допускается.

Отношения один-ко-многим от ключей к значениям не допускаются.

Содержимым интерфейса Map можно получить в разных видах:

entrySet – возвращает объект Set, множество всех пар «ключ-

значения»

keySet – возвращает объект Set, множество всех ключей

valueSet – возвращает объект Collection, набор всех значений

11

Интерфейс Map

Maps – это фактически ассоциативные массивы.

Объект Map описывает отношения между ключами и значениями:

Дублирование ключей не допускается.

Отношения один-ко-многим от ключей к значениям не допускаются.

Содержимым интерфейса Map можно получить в разных видах:

entrySet – возвращает объект Set, множество всех пар «ключ-

значения»

keySet – возвращает объект Set, множество всех ключей

valueSet – возвращает объект Collection, набор всех значений

12

Интерфейс Map

public interface Map<K,V> {

// Базовые операции

V put(K key, V value); V get(Object key);

V remove(Object key);

boolean containsKey(Object key); boolean containsValue(Object value); int size ();

boolean isEmpty();

// Групповые операции

void putAll(Map<? extends K, ? extends V> m) void clear();

// Представление в виде коллекций public Set<K> keySet();

public Collection<V> values(); public Set<Map.Entry<K,V» entrySet();

// Интерфейс к отдельным элементам public interface Entry {

K getKey (); V getValue();

 

V setValue(V value);

 

 

}

 

}

http://docs.oracle.com/javase/7/docs/api/java/util/Map.html

13

 

Интерфейс List

List (список) – упорядоченная коллекция (часто называемая последовательностью). Может содержать одинаковые элементы.

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

14

Интерфейс List

public interface List<E> extends Collection<E> {

// Позиционный доступ

 

E get(int index);

 

E set(int index, E element);

// опционально

boolean add(E element);

// опционально

void add(int index, E element);

// опционально

E remove(int index);

// опционально

boolean addAll(int index,

 

Collections extends E> c); // опционально

// Поиск

int indexOf(Object o); int lastIndexOf(Object o);

// Итерации

ListIterator<E> listlterator(); ListIterator<E> listlterator(int index);

// Дипазаонный просмотр

List<E> subList(int from, int to);

}

http://docs.oracle.com/javase/7/docs/api/java/util/List.html 15

Интерфейс Set

Set (множество) – коллекция, которая не может содержать

одинаковых элементов.

Этот интерфейс моделирует абстракцию математического

множества и используется для представления множественных наборов данных, исключающих дублирование – например,

игральные карты, студенческое расписание на неделю, список

запущенных процессов на рабочей станции.

16

Интерфейс Set

public interface Set<E> extends Collection<E> {

// Базовые операции int size(); boolean isEmpty();

boolean contains(Object element);

 

 

boolean add(E element);

//

опционально

boolean remove(Object element);

//

опционально

Iterator<E> iterator();

 

 

// Групповые операции

boolean containsAll(Collection<?> c);

boolean addAll(Collection<? extends E> c); // опционально

boolean removeAll(Collection<?> c);

// опционально

boolean retainAll(Collection<?> c);

// опционально

void clear();

// опционально

// Операции с массивами

 

Object[] toArray();

 

<T> T[] toArray(T[] a);

 

}

http://docs.oracle.com/javase/7/docs/api/java/util/Set.html 17

Интерфейс Queue

Queue (очередь) – коллекция, которая используется для хранения

элементов перед обработкой.

Кроме типичных для Collection операций, Queue поддерживает операции вставки, извлечения и просмотра элементов. Обычно (но не обязательно!)

Queue располагает элементы в порядке FIFO (first-in, first-out).

Исключением является приоритетная очередь, в которой элементы

располагаются в соответствии с правилами Comparator’а или в естественном порядке.

Вне зависимости от способа упорядочивания, головой очереди является

элемент, который будет удален вызовом remove или просмотрен с

помощью poll. В очереди FIFO все новые элементы добавляются в конец очереди (в «хвост»). Другие типы очереди могут использовать другие способы размещения своих элементов. Каждая реализация интерфейса

Queue должна указывать конкретный способ размещения элементов.

18

Интерфейс Queue

public interface Queue<E> extends Collection<E> { E element ();

boolean offer(E e); E peek() ;

E poll (); E remove ();

}

http://docs.oracle.com/javase/7/docs/api/java/util/Queue.html 19

Интерфейс SortedSet

SortedSet – множество, которое располагает свои элементы по

возрастанию. Интерфейс также предоставляет несколько

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

членов, участников и так далее.

public interface SortedSet<E> extends Set<E> {

// Получение подмножеств

SortedSet<E> subSet(E froroElement, E toElement); SortedSet<E> headSet(E toElement);

SortedSet<E> tailSet(E fromElenient);

//концевые узлы

E first(); E last();

//Доступ к Comparator

Comparator<? super E> comparator();

}

http://docs.oracle.com/javase/7/docs/api/java/util/SortedSet.html 20

Соседние файлы в папке lec