Junior
39
questionbank

Что такое интерфейс Map в Java?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

Map — это интерфейс в Java, представляющий собой коллекцию пар "ключ-значение". Каждый ключ уникален, и ему соответствует одно значение. В отличие от других коллекций вроде List или Set, Map не наследуется от интерфейса Collection.

Основные операции:

  • put(K key, V value): добавляет пару "ключ-значение" или обновляет значение для существующего ключа.
  • get(Object key): возвращает значение, связанное с указанным ключом, или null, если ключ не найден.
  • remove(Object key): удаляет пару по ключу.
  • containsKey(Object key): проверяет наличие ключа.
  • containsValue(Object value): проверяет наличие значения.
  • size(): возвращает количество пар.
  • isEmpty(): проверяет, пуста ли Map.
  • clear(): удаляет все пары.
  • keySet(): возвращает Set ключей.
  • values(): возвращает Collection значений.
  • entrySet(): возвращает Set пар Map.Entry<K, V>.

Примеры реализаций:

  • HashMap: не гарантирует порядок элементов, быстрая для основных операций.
  • LinkedHashMap: сохраняет порядок добавления элементов или порядок доступа.
  • TreeMap: хранит элементы в отсортированном порядке по ключу. Порядок определяется естественным порядком ключей или компаратором.
  • ConcurrentHashMap: потокобезопасная реализация для многопоточных сред.

Пример использования:

java