HashMap ind Java
Hvad er Hashmap i Java?
Et HashMap angiver grundlæggende unikke nøgler til tilsvarende værdier som kan hentes på ethvert givet tidspunkt.
Funktioner af Java Hashmap
a) Den værdier kan gemmes på et kort ved at danne en nøgleværdi par. Værdien kan hentes ved hjælp af nøglen ved at overføre den til den korrekte metode.
b) Hvis intet element findes i kortet, vil det kaste et 'NoSuchElementException'.
c) Kun HashMap-butikker objektreferencer. Derfor er den umulig at bruge primitive datatyper som dobbelt eller int. Brug indpakningsklasse (som Integer eller Double) i stedet.
Brug af HashMaps i Java programmer:
Følgende er de to måder at erklære et Hash-kort på:
HashMap<String, Object> map = new HashMap<String, Object>(); HashMap x = new HashMap();
Vigtige hashmap-metoder
- få (Objekt NØGLE) – Dette vil returnere den værdi, der er knyttet til en specificeret nøgle i denne Java hashmap.
- put(Object KEY, String VALUE) – Denne metode gemmer den angivne værdi og knytter den til den angivne nøgle i dette kort.
Java Eksempel på hashmap
Følgende er et eksempel på implementering af java Hash Map:
import java.util.HashMap; import java.util.Map; public class Sample_TestMaps{ public static void main(String[] args){ Map<String, String> objMap = new HashMap<String, String>(); objMap.put("Name", "Suzuki"); objMap.put("Power", "220"); objMap.put("Type", "2-wheeler"); objMap.put("Price", "85000"); System.out.println("Elements of the Map:"); System.out.println(objMap); } }
Output:
Elements of the Map: {Type=2-wheeler, Price=85000, Power=220, Name=Suzuki}
Eksempel: Fjern en værdi fra HashMap baseret på nøgle
import java.util.*; public class HashMapExample { public static void main(String args[]) { // create and populate hash map HashMap<Integer, String> map = new HashMap<Integer, String>(); map.put(1,"Java"); map.put(2, "Python"); map.put(3, "PHP"); map.put(4, "SQL"); map.put(5, "C++"); System.out.println("Tutorial in Guru99: "+ map); // Remove value of key 5 map.remove(5); System.out.println("Tutorial in Guru99 After Remove: "+ map); } }
Output:
Tutorial in Guru99: {1=Java, 2=Python, 3=PHP, 4=SQL, 5=C++} Tutorial in Guru99 After Remove: {1=Java, 2=Python, 3=PHP, 4=SQL}
Lad os stille et par spørgsmål til selve Hash-kortet for at kende det bedre
Q: Så Mr.Hash Map, hvordan kan jeg finde ud af, om en bestemt nøgle er blevet tildelt dig?
A: Sejt, du kan bruge containsKey(Object KEY) metoden med mig, den vil returnere en boolsk værdi, hvis jeg har en værdi for den givne nøgle.
Q: Hvordan finder jeg alle de tilgængelige nøgler, der er til stede på kortet?
A: Jeg har en metode, der hedder som nøglesæt(), der returnerer alle nøglerne på kortet. I ovenstående eksempel, hvis du skriver en linje som –
System.out.println(objMap.keySet());
Det vil returnere en output som-
[Navn, Type, Strøm, Pris]
Tilsvarende, hvis du kun har brug for alle værdierne, har jeg en metode til værdier().
System.out.println(objMap.values());
Det vil returnere en output som-
[Suzuki, 2-hjulet, 220, 85000]
Q: Antag, at jeg kun skal fjerne en bestemt nøgle fra kortet, skal jeg slette hele kortet?
A: Nej kammerat!! Jeg har en metode til Fjern(Object KEY), der kun fjerner det bestemte nøgle-værdi-par.
Sp: Hvordan kan vi kontrollere, om du rent faktisk indeholder nogle nøgleværdi-par?
A: Bare tjek om jeg er tom eller ej!! Kort sagt, brug er tom() metode imod mig..