Introduktion til HashMap i Java
I Java kan du bruge matrixen til at gemme data, men når der er et krav om at gemme eller hente data på nøgle- og værdi-måde, skal du bruge HashMap til det. Hashmap er en samling i Java, der hører under hierarkiet af grænsefladen kaldet Map. I denne artikel vil vi diskutere Hashmap fra Java-programmerings perspektiv.
Syntaks:
For at bruge HashMap i din kode skal du importere (importere java.util.HashMap-pakken) eller dens overordnede klasse.
import java.util.HashMap;
import java.util.Map;
HashMap =new HashMap ();
Hvor datatypeOfkey og dataytpeOfValue kan være heltal eller streng.
Eksempel:
Map newHashMap = new HashMap();
Hvordan HashMap fungerer i Java?
Hashmap bruger hashing-teknikker til at gemme og hente elementer. Til opbevaring bruger den en linket liste, der kaldes spande. Den bruger to metoder på nøglen: er lig () og hashCode () til indsættelse og hentning af handlinger. Under indsættelse bestemmer hashCode spanden til opbevaring. Derefter kontrollerer hashCode igen, om der allerede er en nøgle med lige hashCode, hvis ja, udskiftes værdien med den nye. Hvis ikke, oprettes det nye kort, hvori værdien gemmes. Mens hentning af data, fastlægger hashCode spand til søgning. Efter dette ved hjælp af hashCode () og lig med () får den værdien og returnerer den. Det returnerer nul, hvis der ikke er nogen værdi til stede.
HashMap Constructor i Java
Det har fire konstruktører som nævnt nedenfor.
- HashMap (): Det er som standard en med belastningsfaktor 0, 75 og kapacitet 16.
- HashMap (int): Opretter HashMap med den kapacitet, der er defineret i dens argumenter. Lastfaktoren er som standard her.
- HashMap (int, float): Opretter HashMap med kapacitet og belastningsfaktor defineret i dens argumenter.
- HashMap (kort m): Opretter HashMap som defineret i argumentkortet.
Top 13 metoder til HashMap i Java
Alle nedenstående metoder diskuteret her kan bruges uanset hvilken som helst version af Java.
- public value get (Objektnøgle): Bruges til at få værdien af den tilsvarende nøgle.
- public value put (K-tast, V-værdi): Indsætter den værdi, der er nævnt i argumentet for den tilsvarende nøgle.
- public boolean containKey (Objektnøgle): Beslutning af, om nøglen er til stede eller ej. Bemærk, at returtypen er Boolsk.
- public boolean containValue (Objektværdi): Beslutning om værdien er til stede eller ej, skal du bemærke, at returtypen er Boolean.
- public V remove ( Objektnøgle ): Rydder en bestemt nøgle og dens værdi-form HashMap som specificeret i kode.
- public void clear (): Rydder alle nøgler og værdier fra HashMap som nævnt.
- public boolean isEmpty (): Kontrollerer, om HashMap er tom eller ikke.
- Objektklon (): Kortlægning af en HashMap returneres ved hjælp af denne metode, som vi kan bruge til kloning til et andet HashMap.
- public int størrelse (): Returnerer størrelsen, betyder, hvor mange nøgleværdipar der er til stede i et HashMap.
- offentligt sæt
entrySet (): Kortlægningssættet i HashMap returneres ved hjælp af denne metode. - public Set keySet () : Det nøglesæt, der findes i HashMap, returneres ved hjælp af denne metode.
- public void putAll (Kort): Kopierer hele kortindholdet til det andet.
- Samlingsværdier (): Du kan få en samling af alle værdierne for en HashMap.
Eksempler på HashMap i Java
HashMap er en kortbaseret samlingsklasse, der bruges til opbevaring af nøgle- og værdipar. Lad os se på et par eksempler.
Eksempel 1
Vi vil diskutere nogle kodeeksempler på HashMap her. Du skal øve koder ved at skrive dig selv og køre på java-kompilator for at kontrollere output. Du kan matche output med det givne til verifikation. Oprettelse af HashMap og indsættelse af data i det.
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);
)
)
Produktion:
Eksempel 2
Lad os tage et andet eksempel, hvor vi tager streng som nøgle og heltal som værdi. Her vil vi måle nøglen og dens tilsvarende værdier i tommer som værdi.
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));
)
)
)
Produktion:
Eksempel 3
Her vil vi gøre flere ting. Vi opretter først en Hashmap, så får vi dens værdier én efter én. Derefter kopierer vi alle data fra HashMap til en helt ny HashMap. Derefter fjerner vi en vare og får deres størrelser. Hvis størrelsen er lavere med én, bekræftes reduktionen af størrelse ved fjernelse.
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());
)
)
Produktion:
Har du bemærket en ting i output af HashMap i alle vores eksempler, mens vi udskriver nøglen og værdierne? Udskriften er ikke i sorteret rækkefølge. Hashmap er ikke som en matrix, så scanning og udskrivning skal sorteres, det kan vælge tilfældigt baseret på den hashværdi, den får.
Konklusion
Du skal bruge HashMap, når din kode eller brugssag kræver håndtering af data i nøgleværdipar. I denne artikel har vi lært om hashmaps i Java med kodeeksempler. Du bør øve dig på at skrive koder på egen hånd for at mestre dette emne.
Anbefalet artikel
Dette er en guide til HashMap i Java. Her diskuterer vi Introduktion til HashMap i Java og dens metoder sammen med kodeimplementering og output. Du kan også gennemgå vores foreslåede artikler for at lære mere -
- Introduktion til HTML-rammer
- Top 11 HTML-attributter
- Anvendelser af HTML | Top 10 anvendelser
- 10 bedste forskelle HTML vs HTML5 (Infographics)