Интерфейс Map
Интерфейс Map из пакета java.utii описывает коллекцию, состоящую из пар "ключ – значение". У каждого ключа только одно значение, что соответствует математическому понятию однозначной функции или отображения (тар).
Такую коллекцию часто называют еще словарем (dictionary) или ассоциативным массивом (associative array).
Обычный массив – простейший пример словаря с заранее заданным числом элементов. Это отображение множества первых неотрицательных целых чисел на множество элементов массива, множество пар "индекс массива – элемент массива".
Класс HashTable – одна из реализаций интерфейса Мар.
Интерфейс Map содержит методы, работающие с ключами и значениями:
- boolean containsKey (Object key) – проверяет наличие ключа key;
- boolean containsValue (Object value) – проверяет наличие значения value;
- Set entryset () – представляет коллекцию в виде множества, каждый элемент которого – пара из данного отображения, с которой можно работать методами вложенного интерфейса Map. Entry;
- object get (object key) – возвращает значение, отвечающее ключу key;
- set keyset () – представляет ключи коллекции в виде множества;
- Object put(Object key, Object value) – добавляет пару "key– value", если такой пары не было, и заменяет значение ключа key, если такой ключ уже есть в коллекции;
- void putAll (Map m) – добавляет к коллекции все пары из отображения m;
- collection values () – представляет все значения в виде коллекции.
В интерфейс мар вложен интерфейс Map.Entry, содержащий методы работы с отдельной парой.