Šioje pamokoje sužinosime apie „Java Map“ sąsają ir jos metodus.
„ Map
Java kolekcijų “ sąsaja suteikia žemėlapio duomenų struktūros funkcionalumą.
Žemėlapio darbas
„Java“ elementai Map
saugomi raktų / reikšmių porose. Raktai yra unikalios vertės, susietos su atskiromis vertybėmis .
Žemėlapyje negali būti pasikartojančių raktų. Kiekvienas raktas susiejamas su viena reikšme.
Mes galime pasiekti ir modifikuoti reikšmes naudodami su jomis susietus raktus.
Pirmiau pateiktoje diagramoje turime vertes: Jungtinės Valstijos, Brazilija ir Ispanija. Ir mes turime atitinkamus raktus: mus, br ir es.
Dabar šias vertes galime pasiekti naudodami atitinkamus raktus.
Pastaba:Map
sąsaja palaiko 3 skirtingų rinkinių:
- raktų rinkinys
- vertybių rinkinys
- raktų / vertės susiejimų rinkinys (susiejimas).
Taigi mes galime pasiekti raktus, vertes ir susiejimus atskirai.
Klasės, įgyvendinančios žemėlapį
Kadangi Map
tai yra sąsaja, negalime iš jos kurti objektų.
Norėdami naudoti Map
sąsajos funkcijas , galime naudoti šias klases:
- „HashMap“
- „Enum“ žemėlapis
- „LinkedHashMap“
- WeakHashMap
- Medžio žemėlapis
Šios klasės yra apibrėžtos kolekcijų sistemoje ir įgyvendina Map
sąsają.

Sąsajos, pratęsiančios žemėlapį
Map
Sąsaja taip pat pratęsė šių subinterfaces:
- Rūšiuotas žemėlapis
- „NavigableMap“
- Kartu Žemėlapis

Kaip naudotis žemėlapiu?
Jei java.util.Map
norite naudoti „ Java“, turime importuoti paketą Map
. Importavę paketą, galime sukurti žemėlapį.
// Map implementation using HashMap Map numbers = new HashMap();
Pirmiau pateiktame kode sukūrėme Map
įvardintus skaičius. Sąsajai įgyvendinti naudojome HashMap
klasę Map
.
Čia
- Raktas - unikalus identifikatorius, naudojamas susieti kiekvieną žemėlapio elementą (vertę)
- Vertė - elementai, susieti su klavišais žemėlapyje
Žemėlapio metodai
Map
Sąsaja apima visus metodus Collection
sąsaja. Taip yra todėl, kad Collection
yra super sąsaja Map
.
Be Collection
sąsajoje prieinamų metodų , Map
sąsajoje taip pat yra šie metodai:
- put (K, V) - į žemėlapį įterpiama rakto K ir vertės V susiejimas. Jei raktas jau yra, naujoji reikšmė pakeičia senąją.
- putAll () - įterpia visus įrašus iš nurodyto žemėlapio į šį žemėlapį.
- putIfAbsent (K, V) - įterpia susiejimą, jei raktas K dar nėra susietas su verte V.
- get (K) - pateikia reikšmę, susietą su nurodytu raktu K. Jei raktas nerastas, jis grįžta
null
. - getOrDefault (K, defaultValue) - pateikia reikšmę, susietą su nurodytu raktu K. Jei raktas nerastas, jis pateikia defaultValue.
- yraKey (K) - patikrina, ar nurodytas raktas K yra žemėlapyje, ar ne.
- containsValue (V) - tikrina, ar nurodyta vertė V yra žemėlapyje, ar ne.
- pakeisti (K, V) - Keiskite rakto K vertę nauja nurodyta V verte.
- pakeisti (K, oldValue, newValue) - rakto K reikšmę pakeičia nauja verte newValue tik tuo atveju, jei raktas K yra susietas su verte oldValue.
- pašalinti (K) - pašalina įrašą iš žemėlapio, kurį žymi klavišas K
- pašalinti (K, V) - pašalina įrašą iš žemėlapio, kurio raktas K susietas su V reikšme.
- keySet () - pateikia visų žemėlapyje esančių raktų rinkinį.
- reikšmės () - pateikia visų žemėlapyje esančių reikšmių rinkinį.
- entrySet () - pateikia visų raktų / reikšmių žemėlapių rinkinį.
Žemėlapio sąsajos įgyvendinimas
1. „HashMap“ klasės įgyvendinimas
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); ) )
Rezultatas
Žemėlapis: (vienas = 1, du = 2) raktai: (vienas, du) vertės: (1, 2) įrašai: (vienas = 1, du = 2) pašalinta vertė: 2
Norėdami sužinoti daugiau apie tai HashMap
, apsilankykite „Java HashMap“.
2. „TreeMap“ klasės įgyvendinimas
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); ) )
Rezultatas
Žemėlapis naudojant „TreeMap“: (Pirmas = 1, Antras = 2) Naujas žemėlapis: (Pirmas = 11, Antras = 22) Pašalinta vertė: 11
Norėdami sužinoti daugiau apie tai TreeMap
, apsilankykite „Java TreeMap“.