Selles õpetuses õpime tundma Java Mapi liidest ja selle meetodeid.
Map
Liides Java kogud raamistik annab funktsionaalsust kaardi andmeid struktuuri.
Kaardi töötamine
Java-s Map
salvestatakse elemendid võtme / väärtuse paaridesse. Võtmed on üksikute väärtustega seotud unikaalsed väärtused .
Kaart ei tohi sisaldada võtmete duplikaate. Ja iga võti on seotud ühe väärtusega.
Väärtustele saame juurde pääseda ja neid muuta, kasutades nendega seotud võtmeid.
Ülaltoodud diagrammil on meil väärtused: Ameerika Ühendriigid, Brasiilia ja Hispaania. Ja meil on vastavad võtmed: meie, br ja es.
Nüüd pääseme neile väärtustele juurde vastavate võtmete abil.
Märkus . Map
Liides säilitab 3 erinevat komplekti:
- võtmekomplekt
- väärtuste kogum
- võtme / väärtuse seoste komplekt (kaardistamine).
Seega pääseme võtmetele, väärtustele ja seostele juurde individuaalselt.
Klassid, mis rakendavad Mapi
Kuna Map
see on liides, ei saa me sellest objekte luua.
Map
Liidese funktsionaalsuste kasutamiseks võime kasutada neid klasse:
- HashMap
- EnumMap
- LinkedHashMap
- WeakHashMap
- Puu kaart
Need klassid on määratletud kogude raamistikus ja rakendavad Map
liidest.

Liidesed, mis laiendavad Mapi
Map
Liides on ka pikendada nende subinterfaces:
- SorditudKaart
- Navigeeritav kaart
- Samaaegne kaart

Kuidas Mapi kasutada?
Java-s peame selle kasutamiseks java.util.Map
paketi importima Map
. Kui pakett on imporditud, saate kaardi luua järgmiselt.
// Map implementation using HashMap Map numbers = new HashMap();
Ülaltoodud koodis oleme loonud Map
nimega numbrid. Oleme liidese HashMap
juurutamiseks kasutanud klassi Map
.
Siin,
- Võti - kordumatu identifikaator, mida kasutatakse iga elemendi (väärtuse) seostamiseks kaardil
- Väärtus - kaardil klahvidega seotud elemendid
Kaardi meetodid
Map
Liides sisaldab kõiki meetodeid Collection
liides. Sellepärast, et Collection
see on superliides Map
.
Lisaks Collection
liideses saadaolevatele meetoditele Map
sisaldab liides ka järgmisi meetodeid:
- put (K, V) - sisestab kaardile võtme K ja väärtuse V seose. Kui võti on juba olemas, asendab uus väärtus vana.
- putAll () - lisab sellele kaardile kõik kirjed määratud kaardilt.
- putIfAbsent (K, V) - lisab ühenduse, kui võti K pole veel väärtusega V seotud.
- get (K) - tagastab määratud võtmega K seotud väärtuse. Kui võtit ei leita, naaseb see
null
. - getOrDefault (K, defaultValue) - tagastab määratud võtmega K seotud väärtuse. Kui võtit ei leitud, tagastab see defaultValue.
- containsKey (K) - kontrollib, kas määratud võti K on kaardil või mitte.
- containsValue (V) - kontrollib, kas määratud väärtus V on kaardil või mitte.
- asenda (K, V) - asendage võtme K väärtus uue määratud väärtusega V.
- asenda (K, oldValue, newValue) - asendab võtme K väärtuse uue väärtusega newValue ainult juhul, kui võti K on seotud väärtusega oldValue.
- eemalda (K) - eemaldab kirje kaardilt, mida tähistab klahv K
- eemalda (K, V) - eemaldab kaardilt kirje, mille võti K on seotud väärtusega V.
- keySet () - tagastab kõigi kaardil olevate võtmete hulga.
- väärtused () - tagastab kõigi kaardil olevate väärtuste hulga.
- entrySet () - tagastab kogu kaardil oleva võtme / väärtuse kaardistamise komplekti.
Kaardiliidese rakendamine
1. HashMapi klassi juurutamine
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); ) )
Väljund
Kaart: (üks = 1, kaks = 2) võtmed: (üks, kaks) väärtused: (1, 2) kirjed: (üks = 1, kaks = 2) eemaldatud väärtus: 2
Lisateabe saamiseks HashMap
külastage Java HashMapi.
2. TreeMap-klassi juurutamine
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); ) )
Väljund
Kaart TreeMapi abil: (esimene = 1, teine = 2) uus kaart: (esimene = 11, teine = 22) eemaldatud väärtus: 11
Lisateabe saamiseks TreeMap
külastage Java TreeMapi.