Introduksjon til HashMap i Java
I Java kan du bruke matrisen til å lagre data, men når det er krav om å lagre eller hente data på nøkkel- og verdi-måte, må du bruke HashMap for det. Hashmap er en samling i Java som hører under hierarkiet til grensesnittet kalt Map. I denne artikkelen vil vi diskutere Hashmap fra Java-programmerings perspektiv.
syntaks:
For å bruke HashMap i koden må du importere (importere java.util.HashMap-pakken) eller den overordnede klassen.
import java.util.HashMap;
import java.util.Map;
HashMap =new HashMap ();
Hvor datatypeOfkey og dataytpeOfValue kan være heltall eller streng.
Eksempel:
Map newHashMap = new HashMap();
Hvordan HashMap fungerer i Java?
Hashmap bruker hashing-teknikker for å lagre og hente elementer. For lagring bruker den en lenket liste som blir referert til som bøtter. Den bruker to metoder på tasten: lik () og hashCode () for å sette inn og hente operasjoner. Under innsetting bestemmer hashCode bøtta for lagring. Etter det sjekker hashCode igjen om det allerede er en nøkkel med lik hashCode, hvis ja, blir verdien erstattet med den nye. Hvis ikke, opprettes det nye kartet som verdien lagres i. Mens henting av data, bestemmer hashCode bøtten for søk. Etter det, ved å bruke hashCode () og er lik (), får den verdien og returnerer den. Den returnerer null i tilfelle det ikke er noen verdi.
HashMap Constructor i Java
Den har fire konstruktører som nevnt nedenfor.
- HashMap (): Det er standard en med belastningsfaktor 0, 75 og kapasitet 16.
- HashMap (int): Oppretter HashMap med kapasiteten definert i sine argumenter. Lastfaktoren er standard her.
- HashMap (int, float): Oppretter HashMap med kapasitet og lastfaktor definert i sine argumenter.
- HashMap (kart m): Oppretter HashMap som definert i argumentkartet.
Topp 13 metoder for HashMap i Java
Alle metodene nedenfor diskutert her kan brukes uavhengig av hvilken som helst versjon av Java.
- public value get (Objektnøkkel): Brukes for å få verdien til den tilsvarende tasten.
- offentlig verdi satt (K-nøkkel, V-verdi): Sett inn verdien som er nevnt i argumentet for den tilsvarende nøkkelen.
- public boolean containKey (Objektnøkkel): Avgjørelse av om nøkkel er til stede eller ikke, merk at returtypen er Boolsk.
- public boolean containValue (Objektverdi): Avgjørelse om verdien er til stede eller ikke, merk at returtypen er boolsk.
- public V remove (Objektnøkkel): Renser spesiell nøkkel og dens verdiform HashMap som spesifisert i kode.
- public void clear (): Renser alle nøkkel og verdier fra HashMap som nevnt.
- public boolean isEmpty (): Bekrefter om HashMap er tom eller ikke.
- Objektklon (): Kartlegginger av en HashMap returneres ved denne metoden som vi kan bruke til kloning til et annet HashMap.
- public int size (): Returnerer størrelsen, betyr hvor mange nøkkelverdipar som er til stede i en HashMap.
- offentlig sett
entrySet (): Kartleggingssettet i HashMap returneres med denne metoden. - public set keySet () : Nøkkelsettet som er til stede i HashMap returneres ved denne metoden.
- public void putAll (Kart): Kopierer hele kartinnholdet til det andre.
- Samlingsverdier (): Du kan få en samling av alle verdiene for en HashMap.
Eksempler på HashMap i Java
HashMap er en kartbasert samlingsklasse som brukes til lagring av nøkkel- og verdipar. La oss se på noen få eksempler.
Eksempel 1
Vi vil diskutere noen kodeeksempler på HashMap her. Du bør øve på koder ved å skrive deg selv og kjøre på java-kompilator for å sjekke utdataene. Du kan matche utdataene med den gitte for bekreftelse. Oppretting av HashMap og innsetting av data i den.
Kode:
import java.util.HashMap;
import java.util.Map;
public class CreateHashMapExample (
public static void main(String() args) (
// Creating a HashMap
Map newHashMap = new HashMap();
// Addition of key and value
newHashMap.put("Key1", "Java");
newHashMap.put("Key2", "C++");
newHashMap.put("Key3", "Python");
// Addition of new key and value
newHashMap.putIfAbsent("Key4", "Ruby");
System.out.println(newHashMap);
)
)
Produksjon:
Eksempel 2
La oss ta et annet eksempel der vi tar streng som nøkkel og heltall som verdi. Her vil vi måle nøkkel og de tilsvarende verdiene i tommer som verdi.
Kode:
import java.util.HashMap;
public class CreateHashMapExample2 (
public static void main(String() args) (
// Create a HashMap object called measurement
HashMap ms = new HashMap();
// Add keys and values (Name and phone number of the person)
ms.put("S", 35);
ms.put("M", 38);
ms.put("L", 40);
ms.put("XL", 42);
for (String key : ms.keySet()) (
System.out.println("measurement of " + key + " in inch is: " + ms.get(key));
)
)
)
Produksjon:
Eksempel 3
Her vil vi gjøre flere ting. Vi oppretter først et Hashmap, så får vi verdiene ett etter ett. Etter det kopierer vi alle data fra HashMap til en helt ny HashMap. Etter det fjerner vi en vare og får størrelsene deres. Hvis størrelsen er lavere med én, bekreftes reduksjonen av størrelse ved fjerning.
Kode:
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
public class HashMapInJava (
public static void main(String() args) (
Map newHashMap = new HashMap();
// Addition of key and value
newHashMap.put("Key1", "Lenovo");
newHashMap.put("Key2", "Motorola");
newHashMap.put("Key3", "Nokia");
newHashMap.put("Key4", null);
newHashMap.put(null, "Sony");
System.out.println("Original map contains:" + newHashMap);
//getting size of Hashmap
System.out.println("Size of original Map is:" + newHashMap.size());
//copy contains of one Hashmap to another
Map copyHashMap = new HashMap();
copyHashMap.putAll(newHashMap);
System.out.println("copyHashMap mappings= " + copyHashMap);
//Removal of null key
String nullKeyValue = copyHashMap.remove(null);
System.out.println("copyHashMap null key value = " + nullKeyValue);
System.out.println("copyHashMap after removing null key = " + copyHashMap);
System.out.println("Size of copyHashMap is:" + copyHashMap.size());
)
)
Produksjon:
Har du lagt merke til en ting i utdataene fra HashMap i alle eksemplene våre, mens vi skriver ut nøkkelen og verdiene? Utskriften er ikke i sortert rekkefølge. Hashmap er ikke som en matrise, slik at skanning og utskrift må sorteres, den kan velge tilfeldig basert på hashverdien den får.
Konklusjon
Du bør bruke HashMap når koden eller bruksaken din krever behandling av data i nøkkelverdipar. I denne artikkelen har vi lært om hashmaps i Java med kodeeksempler. Du bør øve på å skrive koder på egen hånd for å mestre dette emnet.
Anbefalt artikkel
Dette er en guide til HashMap i Java. Her diskuterer vi Introduksjon til HashMap i Java og dens metoder, samt kodeimplementering og output. Du kan også gå gjennom de foreslåtte artiklene våre for å lære mer -
- Introduksjon til HTML-rammer
- Topp 11 HTML-attributter
- Bruksområder for HTML | Topp 10 bruksområder
- 10 beste forskjeller HTML vs HTML5 (Infographics)