V tej vadnici bomo spoznali vmesnik Java Map in njegove metode.
Map
Vmesnik okviru Java zbirk zagotavlja funkcionalnost strukture map podatkov.
Delovanje zemljevida
V Javi so elementi Map
shranjeni v parih ključ / vrednost . Ključi so edinstvene vrednosti, povezane s posameznimi vrednostmi .
Zemljevid ne sme vsebovati podvojenih ključev. Vsak ključ je povezan z eno vrednostjo.
Vrednosti lahko dostopamo in spreminjamo z njimi povezanimi ključi.
V zgornjem diagramu imamo vrednosti: ZDA, Brazilija in Španija. In imamo ustrezne tipke: us, br in es.
Zdaj lahko do teh vrednosti dostopamo z ustreznimi ključi.
Opomba:Map
vmesnik ohranja 3 različne sklope:
- nabor tipk
- nabor vrednosti
- nabor povezav ključ / vrednost (preslikava).
Tako lahko do ključev, vrednosti in asociacij dostopamo posamično.
Razredi, ki izvajajo Map
Ker Map
je vmesnik, iz njega ne moremo ustvarjati predmetov.
Za uporabo funkcionalnosti Map
vmesnika lahko uporabimo te razrede:
- HashMap
- EnumMap
- LinkedHashMap
- WeakHashMap
- TreeMap
Ti razredi so definirani v okviru zbirk in izvajajo Map
vmesnik.

Vmesniki, ki razširjajo Map
Map
Vmesnik je razširjena tudi v teh subinterfaces:
- SortedMap
- NavigableMap
- ConcurrentMap

Kako uporabljati Zemljevid?
V Javi moramo java.util.Map
paket uporabiti za uporabo Map
. Ko uvozimo paket, je opisano, kako lahko ustvarimo zemljevid.
// Map implementation using HashMap Map numbers = new HashMap();
V zgornji kodi smo ustvarili Map
imenovane številke. Za uporabo vmesnika smo uporabili HashMap
razred Map
.
Tukaj,
- Ključ - enolični identifikator, ki se uporablja za povezovanje vsakega elementa (vrednosti) na zemljevidu
- Vrednost - elementi, povezani s ključi na zemljevidu
Metode zemljevida
Map
Vmesnik vključuje vse metode v Collection
vmesniku. To je zato, ker Collection
je super vmesnik Map
.
Poleg načinov, ki so na voljo v Collection
vmesniku, Map
vmesnik vključuje tudi naslednje metode:
- put (K, V) - na zemljevid vstavi povezavo ključa K in vrednosti V. Če je ključ že prisoten, nova vrednost nadomesti staro vrednost.
- putAll () - na ta zemljevid vstavi vse vnose z določenega zemljevida.
- putIfAbsent (K, V) - Vstavi povezavo, če ključ K še ni povezan z vrednostjo V.
- get (K) - Vrne vrednost, povezano z določenim ključem K. Če ključa ne najdemo, se vrne
null
. - getOrDefault (K, defaultValue) - vrne vrednost, povezano z določenim ključem K. Če ključa ne najdemo, vrne defaultValue.
- containsKey (K) - Preveri, ali je določeni ključ K prisoten na zemljevidu ali ne.
- containsValue (V) - Preveri, ali je navedena vrednost V na zemljevidu ali ne.
- zamenjaj (K, V) - vrednost ključa K zamenjaj z novo določeno vrednostjo V.
- replace (K, oldValue, newValue) - nadomesti vrednost ključa K z novo vrednostjo newValue le, če je ključ K povezan z vrednostjo oldValue.
- odstrani (K) - Odstrani vnos s zemljevida, ki ga predstavlja tipka K.
- odstrani (K, V) - Odstrani vnos z zemljevida, ki ima ključ K povezan z vrednostjo V.
- keySet () - Vrne nabor vseh tipk, ki so na zemljevidu.
- values () - Vrne nabor vseh vrednosti, ki so na zemljevidu.
- entrySet () - Vrne nabor vseh preslikav ključev / vrednosti, ki so prisotne na zemljevidu.
Izvajanje vmesnika zemljevida
1. Izvajanje razreda 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); ) )
Izhod
Zemljevid: (One = 1, Two = 2) Tipke: (One, Two) Vrednosti: (1, 2) Vnosi: (One = 1, Two = 2) Odstranjena vrednost: 2
Če želite izvedeti več o tem HashMap
, obiščite Java HashMap.
2. Izvajanje razreda 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); ) )
Izhod
Zemljevid z uporabo TreeMap: (First = 1, Second = 2) New Map: (First = 11, Second = 22) Odstranjena vrednost: 11
Če želite izvedeti več o tem TreeMap
, obiščite Java TreeMap.