Интерфейс карты Java

В этом руководстве мы узнаем об интерфейсе Java Map и его методах.

MapИнтерфейс рамок коллекций Java обеспечивает функциональные структуры данных карты.

Работа карты

В Java элементы Mapхранятся в парах ключ / значение . Ключи - это уникальные значения, связанные с отдельными значениями .

Карта не может содержать повторяющиеся ключи. И каждый ключ связан с одним значением.

Мы можем получать доступ к значениям и изменять их, используя связанные с ними ключи.

На приведенной выше диаграмме у нас есть значения: США, Бразилия и Испания. И у нас есть соответствующие ключи: us, br и es.

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

Примечание:Map интерфейс поддерживает 3 различных наборов:

  • набор ключей
  • набор ценностей
  • набор ассоциаций ключ / значение (отображение).

Следовательно, мы можем получить доступ к ключам, значениям и ассоциациям индивидуально.

Классы, реализующие Map

Поскольку Mapэто интерфейс, мы не можем создавать из него объекты.

Чтобы использовать функции Mapинтерфейса, мы можем использовать эти классы:

  • HashMap
  • EnumMap
  • LinkedHashMap
  • WeakHashMap
  • TreeMap

Эти классы определены в структуре коллекций и реализуют Mapинтерфейс.

Подклассы Java Map

Интерфейсы, расширяющие Map

MapИнтерфейс также распространяется этими подынтерфейсы:

  • SortedMap
  • NavigableMap
  • ConcurrentMap
Подинтерфейсы Java Map

Как пользоваться картой?

В Java мы должны импортировать java.util.Mapпакет, чтобы использовать Map. После импорта пакета вот как мы можем создать карту.

 // Map implementation using HashMap Map numbers = new HashMap(); 

В приведенном выше коде мы создали Mapименованные числа. Мы использовали HashMapкласс для реализации Mapинтерфейса.

Вот,

  • Ключ - уникальный идентификатор, используемый для связи каждого элемента (значения) на карте.
  • Значение - элементы, связанные ключами на карте

Методы карты

MapИнтерфейс включает в себя все методы Collectionинтерфейса. Это потому, что Collectionэто супер-интерфейс Map.

Помимо методов, доступных в Collectionинтерфейсе, Mapинтерфейс также включает следующие методы:

  • put (K, V) - вставляет ассоциацию ключа K и значения V в карту. Если ключ уже присутствует, новое значение заменяет старое.
  • putAll () - вставляет все записи из указанной карты в эту карту.
  • putIfAbsent (K, V) - вставляет ассоциацию, если ключ K еще не связан со значением V.
  • get (K) - возвращает значение, связанное с указанным ключом K. Если ключ не найден, возвращается null.
  • getOrDefault (K, defaultValue) - возвращает значение, связанное с указанным ключом K. Если ключ не найден, возвращается defaultValue.
  • containsKey (K) - проверяет, присутствует ли указанный ключ K на карте или нет.
  • containsValue (V) - проверяет, присутствует ли указанное значение V на карте или нет.
  • replace (K, V) - заменить значение ключа K новым заданным значением V.
  • replace (K, oldValue, newValue) - заменяет значение ключа K новым значением newValue, только если ключ K связан со значением oldValue.
  • remove (K) - удаляет запись с карты, представленной ключом K.
  • remove (K, V) - удаляет запись с карты, у которой ключ K связан со значением V.
  • keySet () - возвращает набор всех ключей, присутствующих на карте.
  • values ​​() - возвращает набор всех значений, присутствующих на карте.
  • entrySet () - возвращает набор всех сопоставлений ключ / значение, присутствующих на карте.

Реализация интерфейса карты

1. Реализация класса HashMap

 import java.util.Map; import java.util.HashMap; class Main ( public static void main(String() args) ( // Creating a map using the HashMap Map numbers = new HashMap(); // Insert elements to the map numbers.put("One", 1); numbers.put("Two", 2); System.out.println("Map: " + numbers); // Access keys of the map System.out.println("Keys: " + numbers.keySet()); // Access values of the map System.out.println("Values: " + numbers.values()); // Access entries of the map System.out.println("Entries: " + numbers.entrySet()); // Remove Elements from the map int value = numbers.remove("Two"); System.out.println("Removed Value: " + value); ) ) 

Вывод

 Карта: (Один = 1, Два = 2) Ключи: (Один, Два) Значения: (1, 2) Записи: (Один = 1, Два = 2) Удаленное значение: 2 

Чтобы узнать больше HashMap, посетите Java HashMap.

2. Реализация класса TreeMap

 import java.util.Map; import java.util.TreeMap; class Main ( public static void main(String() args) ( // Creating Map using TreeMap Map values = new TreeMap(); // Insert elements to map values.put("Second", 2); values.put("First", 1); System.out.println("Map using TreeMap: " + values); // Replacing the values values.replace("First", 11); values.replace("Second", 22); System.out.println("New Map: " + values); // Remove elements from the map int removedValue = values.remove("First"); System.out.println("Removed Value: " + removedValue); ) ) 

Вывод

 Карта с использованием TreeMap: (Первая = 1, Вторая = 2) Новая карта: (Первая = 11, Вторая = 22) Удаленное значение: 11 

Чтобы узнать больше TreeMap, посетите Java TreeMap.

Интересные статьи...