Интерфейс SortedMap
SortedMap – упорядоченный вариант ассоциативного массива
Map, отсортированный по возрастанию значения ключа.
Является Map-аналогом SortedSet’а.
Отсортированные ассоциативные массивы служат для хранения
отсортированных пар «ключ-значение», например, словари
или телефонные справочники.
public interface SortedMap<K, V> extends Map<K, V> { Comparator<? super K> comparator(); SortedMap<K, V> subHap(K fromKey, K toKey); SortedMap<K, V> headHap(K toKey); SortedMap<K, V> tailHap(K fromKey);
K firstKey(); K lastKey();
}
http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html 21
Интерфейс Deque (очередь с двусторонним доступом)
http://docs.oracle.com/javase/7/docs/api/java/util/Deque.html 22
Интерфейс NavigableSet
http://docs.oracle.com/javase/7/docs/api/java/util/NavigableSet.html 23
Интерфейс NavigableSet
http://docs.oracle.com/javase/7/docs/api/java/util/NavigableSet.html 24
Интерфейс NavigableMap
http://docs.oracle.com/javase/7/docs/api/java/util/NavigableMap.html 25
Интерфейс NavigableMap
http://docs.oracle.com/javase/7/docs/api/java/util/NavigableMap.html 26
Конкретные классы, основанные на коллекциях
Тип коллекции |
Описание |
|
ArrayList |
Индексированная последовательность, динамически растягивающаяся и |
|
cжимающаяся. |
||
|
||
LinkedList |
Упорядоченная последовательность, позволяющая эффективную вставку и |
|
удаление в любой позиции. |
||
|
||
ArrayDeque |
Упорядоченная последовательность, реализованная в виде циклического массива. |
|
HashSet |
Неупорядоченная коллекция, исключающая дубликаты. |
|
TreeSet |
Сортированный набор. |
|
EnumSet |
Множество значений перечислимого типа. |
|
LinkedHashSet |
Набор, запоминающий порядок вставки элементов. |
|
PriorityQueue |
Коллекция, позволяющая эффективно удалять наименьший элемент . |
|
HashMap |
Структура данных, сохраняющая ассоциации “ключ/значение". |
|
TreeMap |
Карта с сортированными ключами. |
|
EnumMap |
Карта, в которой ключи относятся к перечислимому типу. |
|
LinkedHashMap |
Карта, запоминающая порядок, в котором добавлялись элементы. |
|
WeakHashMap |
Карта со значениями, которые могут удаляться сборщиком мусора, если таковые |
|
нигде не используются. |
||
|
||
IdentityHashMap |
Карта с ключами, сравниваемыми с помощью ==, а не equals О. |
27
Пример работы с Set
1import java.util.*;
2public class SetExample {
3public static void main(String[] args) {
4 |
Set set = new HashSet() ; |
|
5 |
set.add("one"); |
|
6 |
set.add("second"); |
|
7 |
set.add("3rd"); |
|
8 |
set.add(new Integer(4)); |
|
9 |
set.add(new Float(5.OF)); |
|
10 |
set.add("second"); |
// дубликат, не добавляется |
11 |
set.add(new Integer(4)); |
// дубликат, не добавляется |
12 |
System.out.println(set); |
|
13}
14}
The output generated from this program is: [one, second, 5.0, 3rd, 4]
28
Пример работы с List
1import java.util.*
2public class ListExample {
3public static void main(String[] args) {
4 |
List list = new ArrayList(); |
|
5 |
list.add ("one"); |
|
6 |
list.add("second"); |
|
7 |
list.add("3rd"); |
|
8 |
list.add(new Integer(4)); |
|
9 |
1ist.add(new Float(5.OF)); |
|
10 |
list.add("second"); |
// дубликат, не добавляется |
11 |
list.add(new Integer(4)); |
// дубликат, не добавляется |
12 |
System.out.println(list) ; |
|
13 |
} |
|
14 } |
|
|
The output generated from this program is: [one, second, 3rd, 4, 5.0, second, 4]
29
Пример работы с Map
1import java.util.*;
2public class MapExample {
3public static void main (String args []) {
4 |
Map map = new HashMap(); |
5 |
map.put("one","1st"); |
6 |
map.put("second", new Integer(2)) ; |
7 |
map.put("third","3rd"); |
8 |
// перезаписывает предыдущее присваивание |
9 |
map.put("third","III"); |
10 |
// возвращает множество ключей |
11 |
Set set1 = map.keyset(); |
12 |
// возвращает множество значений |
13 |
Collection collection = map.values(); |
14 |
// возвращает массив «ключ-значение» |
15 |
Set set2 = map.entrySet(); |
16 |
System.out.println(setl +"\n"+ collection +"\n"+ set2); |
17}
18}
Output generated from the MapExample program: [second, one, third]
[2, 1st, III]
[second=2, one=lst, third=III]
30