Java Map Interface

I den här handledningen lär vi oss om Java Map-gränssnittet och dess metoder.

Det Mapgränssnitt samlingar ramen för Java ger funktionaliteten hos kartan datastrukturen.

Arbeta på karta

I Java Maplagras element i nyckel / värdepar . Nycklar är unika värden associerade med enskilda värden .

En karta kan inte innehålla dubbla nycklar. Och varje nyckel är associerad med ett enda värde.

Vi kan komma åt och ändra värden med hjälp av de nycklar som är associerade med dem.

I ovanstående diagram har vi värden: USA, Brasilien och Spanien. Och vi har motsvarande tangenter: oss, br och es.

Nu kan vi komma åt dessa värden med motsvarande nycklar.

Obs: Den MapGränssnittet håller 3 olika uppsättningar:

  • uppsättningen nycklar
  • uppsättningen värden
  • uppsättningen nyckel / värdeföreningar (mappning).

Därför kan vi komma åt nycklar, värden och föreningar individuellt.

Klasser som implementerar Map

Eftersom det Mapär ett gränssnitt kan vi inte skapa objekt från det.

För att använda funktionerna i Mapgränssnittet kan vi använda dessa klasser:

  • HashMap
  • EnumMap
  • LinkedHashMap
  • WeakHashMap
  • TreeMap

Dessa klasser definieras i samlingsramen och implementerar Mapgränssnittet.

Java Map-underklasser

Gränssnitt som förlänger kartan

Den Mapgränssnittet är också förlängas med dessa subinterfaces:

  • SortedMap
  • NavigableMap
  • ConcurrentMap
Java-kartgränssnitt

Hur använder jag Map?

I Java måste vi importera java.util.Mappaketet för att kunna använda det Map. När vi väl har importerat paketet, här kan vi skapa en karta.

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

I koden ovan har vi skapat Mapnamngivna nummer. Vi har använt HashMapklassen för att implementera Mapgränssnittet.

Här,

  • Nyckel - en unik identifierare som används för att associera varje element (värde) på en karta
  • Värde - element som är associerade med nycklar på en karta

Metoder för karta

I Mapgränssnitt innefattar alla metoder i Collectiongränssnittet. Det beror på att det Collectionär ett supergränssnitt för Map.

Besides methods available in the Collection interface, the Map interface also includes the following methods:

  • put(K, V) - Inserts the association of a key K and a value V into the map. If the key is already present, the new value replaces the old value.
  • putAll() - Inserts all the entries from the specified map to this map.
  • putIfAbsent(K, V) - Inserts the association if the key K is not already associated with the value V.
  • get(K) - Returns the value associated with the specified key K. If the key is not found, it returns null.
  • getOrDefault(K, defaultValue) - Returns the value associated with the specified key K. If the key is not found, it returns the defaultValue.
  • containsKey(K) - Checks if the specified key K is present in the map or not.
  • containsValue(V) - Checks if the specified value V is present in the map or not.
  • replace(K, V) - Replace the value of the key K with the new specified value V.
  • replace(K, oldValue, newValue) - Replaces the value of the key K with the new value newValue only if the key K is associated with the value oldValue.
  • remove(K) - Removes the entry from the map represented by the key K.
  • remove(K, V) - Removes the entry from the map that has key K associated with value V.
  • keySet() - Returns a set of all the keys present in a map.
  • values() - Returns a set of all the values present in a map.
  • entrySet () - Returnerar en uppsättning av alla nyckel- / värdekartläggningar som finns på en karta.

Implementering av kartgränssnittet

1. Implementering av HashMap-klass

 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); ) ) 

Produktion

 Karta: (En = 1, Två = 2) Knappar: (En, Två) Värden: (1, 2) Inlägg: (En = 1, Två = 2) Borttaget värde: 2 

För att lära dig mer om det HashMap, besök Java HashMap.

2. Implementering av TreeMap-klass

 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); ) ) 

Produktion

 Karta med TreeMap: (First = 1, Second = 2) New Map: (First = 11, Second = 22) Borttaget värde: 11 

För att lära dig mer om TreeMap, besök Java TreeMap.

Intressanta artiklar...