Ильдар Хабибуллин - Java 7 [Наиболее полное руководство]
- Название:Java 7 [Наиболее полное руководство]
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2012
- ISBN:978-5-9775-0735-6
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Ильдар Хабибуллин - Java 7 [Наиболее полное руководство] краткое содержание
Java 7 [Наиболее полное руководство] - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
Класс Vector — одна из реализаций интерфейса List.
Интерфейс List добавляет к методам интерфейса Collection методы, использующие индекс index элемента:
□ void add (int index, Object obj) - вставляет элемент obj в позицию index; старые
элементы, начиная с позиции index, сдвигаются, их индексы увеличиваются на единицу;
□ boolean addAll(int index, Collection coll) — вставляет все элементы коллекции coll;
□ Object get(int index) возвращает элемент, находящийся в позиции index;
□ int indexOf (Obj ect obj) — возвращает индекс первого появления элемента obj в коллекции;
□ int lastIndexOf (Object obj) — возвращает индекс последнего появления элемента obj в коллекции;
□ Listiterator listiterator() — возвращает итератор коллекции;
□ ListIterator listIterator(int index) — возвращает итератор конца коллекции от позиции index;
□ Object set (int index, Object obj ) - заменяет элемент, находящийся в позиции index,
элементом obj ;
□ List subList (int from, int to) - возвращает часть коллекции от позиции from вклю
чительно до позиции to исключительно.
Интерфейс Set
Интерфейс Set из пакета java.util, расширяющий интерфейс Collection, описывает неупорядоченную коллекцию, не содержащую повторяющихся элементов. Это соответствует математическому понятию множества (set). Такие коллекции удобны для проверки наличия или отсутствия у элемента свойства, определяющего множество. Новые методы в интерфейс Set не добавлены, просто метод add () не станет добавлять еще одну копию элемента, если такой элемент уже есть в множестве.
Этот интерфейс расширен интерфейсом SortedSet.
Интерфейс SortedSet из пакета java.util, расширяющий интерфейс Set, описывает упорядоченное множество, отсортированное по естественному порядку возрастания его элементов или по порядку, заданному какой-либо реализацией интерфейса Comparator.
Элементы не нумеруются, но есть понятие первого, последнего, большего и меньшего элемента.
Дополнительные методы интерфейса отражают эти понятия:
□ Comparator comparator () — возвращает способ упорядочения коллекции;
□ Object first () — возвращает первый, меньший элемент коллекции;
□ SortedSet headSet(Object toElement) — возвращает начальные, меньшие элементы до элемента toElement исключительно;
□ Object last () — возвращает последний, больший элемент коллекции;
□ SortedSet subSet(Object fromElement, Object toElement) — возвращает подмножество коллекции от элемента fromElement включительно до элемента toElement исключительно;
□ SortedSet tailSet(Object fromElement) — возвращает последние, большие элементы коллекции от элемента fromElement включительно.
Интерфейс NavigableSet
Интерфейс NavigableSet из пакета java.util, расширяющий интерфейс SortedSet, описывает отсортированное множество, в котором можно организовать бинарный поиск.
Чтобы осуществить это, в интерфейсе описаны методы, позволяющие для каждого данного элемента множества найти ближайший больший и ближайший меньший элементы
того же множества.
Методы возвращают null, если элемент не удалось найти:
□ Object lower (Object elem) — возвращает ссылку на наибольший элемент множества, меньший данного элемента elem;
□ Object floor (Object elem) — возвращает ссылку на наибольший элемент множества, меньший или равный данному элементу elem;
□ Object higher (Object elem) — возвращает ссылку на наименьший элемент множества, больший данного элемента elem;
□ Object ceiling (Obj ect elem) — возвращает ссылку на наименьший элемент множества, больший или равный данному элементу elem.
Следующие методы позволяют выделить отсортированное подмножество:
□ NavigableSet subSet(Object fromElement, boolean frominclusive, Object toElement,
boolean toinclusive) - возвращает подмножество коллекции от элемента fromElement
включительно, если frominclusive == true, или исключительно, если
frominclusive == false, до элемента toElement включительно или исключительно в зависимости от истинности последнего параметра toinclusive;
□ NavigableSet headSet(Object toElement, boolean inclusive) — возвращает начальные, меньшие элементы до элемента toElement включительно или исключительно в зависимости от истинности параметра inclusive;
□ NavigableSet tailSet(Object fromElement, boolean inclusive) — возвращает последние, большие элементы коллекции от элемента fromElement включительно или исключительно в зависимости от истинности параметра inclusive.
Наконец, два метода удаляют наименьший и наибольший элементы множества:
□ Object pollFirst () — возвращает ссылку на наименьший элемент множества и удаляет его;
□ Obj ect pollLast () — возвращает ссылку на наибольший элемент множества и удаляет его.
Интерфейс Queue
Интерфейс Queue из пакета java.util, расширяющий интерфейс Collection, описывает методы работы с очередями. Очередью называется коллекция, элементы в которую добавляются с одного конца, а удаляются с другого конца. Хороший пример такой коллекции — обычная житейская очередь в магазине или на автобусной остановке. Такой порядок обработки называется FIFO (First In — First Out, первым пришел — первым ушел).
Интерфейс Queue добавляет к методам интерфейса Collection методы, характерные для очередей:
□ Object element () — возвращает первый элемент очереди, не удаляя его из очереди. Метод выбрасывает исключение, если очередь пуста;
□ Object peek() — возвращает первый элемент очереди, не удаляя его. В отличие от метода element () не выбрасывает исключение;
□ Object remove() — возвращает первый элемент очереди и удаляет его из очереди. Метод выбрасывает исключение, если очередь пуста;
□ Object poll () — возвращает первый элемент очереди и удаляет его из очереди. В отличие от метода remove () не выбрасывает исключение;
□ boolean offer(Object obj) - вставляет элемент в конец очереди и возвращает true,
если вставка удалась.
Интерфейс BlockingQueue
Интерфейс BlockingQueue из пакета java.util.concurrent, расширяющий интерфейс Queue, описывает очередь, с которой работают одновременно несколько подпроцессов, вставляющих и удаляющих элементы. Их работа организуется таким образом, чтобы подпроцесс, пытающийся забрать элемент из пустой очереди, ждал, когда другой подпроцесс занесет в нее хотя бы один элемент. Подпроцесс, ставящий элемент в очередь, ждет, когда для него освободится место, если очередь уже переполнена.
Для организации такой совместной работы добавлены следующие методы:
□ Obj ect take () — возвращает и удаляет первый элемент, ожидая поступления элемента, если очередь пуста;
□ void put (Object element) — ставит элемент element в очередь, ожидая уменьшения очереди, если она переполнена;
Читать дальшеИнтервал:
Закладка: