I den här handledningen lär vi oss om Java Map-gränssnittet och dess metoder.
Det Map
gränssnitt samlingar ramen för Java ger funktionaliteten hos kartan datastrukturen.
Arbeta på karta
I Java Map
lagras 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 Map
Grä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 Map
gränssnittet kan vi använda dessa klasser:
- HashMap
- EnumMap
- LinkedHashMap
- WeakHashMap
- TreeMap
Dessa klasser definieras i samlingsramen och implementerar Map
gränssnittet.
![](https://cdn.wiki-base.com/4741423/java_map_interface_2.png.webp)
Gränssnitt som förlänger kartan
Den Map
gränssnittet är också förlängas med dessa subinterfaces:
- SortedMap
- NavigableMap
- ConcurrentMap
![](https://cdn.wiki-base.com/4741423/java_map_interface_3.png.webp)
Hur använder jag Map?
I Java måste vi importera java.util.Map
paketet 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 Map
namngivna nummer. Vi har använt HashMap
klassen för att implementera Map
grä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 Map
gränssnitt innefattar alla metoder i Collection
grä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.