Hvordan iterere et HashMap i Java

Hvordan Iterere Et Hashmap I Java



Mens du opprettholder postene i Java, kan det være tilfeller der utvikleren trenger tilgang til en bestemt ' HashMap ' for å bruke eller dumpe den. For eksempel gjenbruk av et bestemt sett med oppføringer eller flytting av et utdatert sett med data til søppel. I slike tilfeller hjelper det å iterere et HashMap i Java for å få tilgang til dataene og administrere minnet effektivt.

Denne artikkelen vil diskutere tilnærmingene for å iterere et 'HashMap' i Java.

Hva er et HashMap i Java?

en ' HashMap ' lagrer varer i form av ' nøkkelverdi ”-par og disse kan påkalles av en indeks av en hvilken som helst annen type (f.eks. streng). Den tillater også lagring av null-nøklene.







Hvordan iterere et HashMap i Java?

Et HashMap i Java kan itereres ved å bruke følgende tilnærminger:



Tilnærming 1: Iterer et HashMap i Java ved å bruke 'for' Loop

« entrySet() ”-metoden gir en sett visning av alle oppføringene/elementene i en hashmap. « getKey() ' og ' getValue() ”-metoder henter henholdsvis nøkkelen og verdien fra oppføringen. Disse tilnærmingene kan brukes i kombinasjon for først å få tilgang til hashmap og iterere gjennom de akkumulerte nøklene og verdiene ved å bruke ' til ' Løkke.



Syntaks





hashmap. oppføringSett ( )

I syntaksen ovenfor, ' hashmap ' refererer til en ' HashMap ' klasseobjekt.

Eksempel

La oss se på eksemplet nedenfor:



import java.util.HashMap ;

import java.util.Map ;

offentlig klasse Eksempel {

offentlig statisk tomrom hoved- ( String args [ ] ) {

Kart < Heltall , String > custom_hashmap = ny HashMap < Heltall , String > ( ) ;

custom_hashmap. sette ( 1 , 'Harry' ) ;

custom_hashmap. sette ( 2 , 'David' ) ;

custom_hashmap. sette ( 3 , 'Sara' ) ;

til ( Kart . Inngang < Heltall , String > sett : custom_hashmap. oppføringSett ( ) ) {

System . ute . println ( sett. get Key ( ) + ':' + sett. getValue ( ) ) ;

} }

}

I koden ovenfor:

  • Lag først en ' HashMap 'navngitt' custom_hashmap ' slik at nøkkelen er spesifisert som en ' heltall ' og verdi som ' streng ' representert i koden som ' Kart '.
  • Etter det, tilknytt ' sette() ' metode med hashmap for å sette inn de angitte verdiene i form av ' nøkkelverdi ' par.
  • Bruk nå ' til ' loop kombinert med ' entrySet() ” metode for å iterere gjennom hashmap.
  • Merk at den spesifiserte ' Kart.Entry ”-grensesnittet gjør det mulig for brukeren å arbeide med en kartoppføring.
  • Til slutt, bruk ' getKey() ' og ' getValue() ” metoder for å få tilgang til de tildelte nøklene og verdiene og vise dem.

Produksjon

I denne utgangen kan det analyseres at de angitte nøkkelverdi-parene gjentas og vises.

Tilnærming 2: Iterer et HashMap i Java ved å bruke 'forEach()'-metoden

« for hver() ”-metoden brukes til å bruke en bestemt operasjon for hvert element. Denne metoden kan implementeres for ganske enkelt å iterere gjennom hvert nøkkelverdi-par i ' HashMap ' og vise den.

Syntaks

for hver ( med super OG > x )

I syntaksen ovenfor tar denne metoden en parameter ' x ” som tilsvarer handlingen som må utføres for hvert element.

Eksempel

La oss følge koden nedenfor:

import java.util.HashMap ;

import java.util.Map ;

offentlig klasse Eksempel {

offentlig statisk tomrom hoved- ( String args [ ] ) {

Kart < Heltall , String > custom_hashmap = ny HashMap < Heltall , String > ( ) ;

custom_hashmap. sette ( 1 , 'Harry' ) ;

custom_hashmap. sette ( 2 , 'David' ) ;

custom_hashmap. sette ( 3 , 'Sara' ) ;

custom_hashmap. for hver ( ( nøkkel, verdi ) -> System . ute . println ( nøkkel + ':' + verdi ) ) ;

} }

I illustrasjonen ovenfor:

  • Husk de diskuterte tilnærmingene for å lage en ' HashMap ' og alloker verdiene i form av ' nøkkelverdi ' par.
  • Tilknytt nå ' for hver() '-metoden med det opprettede HashMap og vis hver av de itererte ' nøkkelverdi ” pares på konsollen.

Produksjon

Som du kan se at tastene og deres tilsvarende verdier i ' HashMap ' har blitt gjentatt.

Tilnærming 3: Iterer et HashMap i Java ved å bruke 'Iterator'-objekt

« Iterator '-objektet brukes til å gå gjennom elementene en etter en, og ' iterator() metoden kan brukes til å hente en iterator. « hasNext() 'metoden gir' ekte ' hvis det er et neste element i hashmapet, og ' neste() ”-metoden gir det neste hashmap-elementet. Disse tilnærmingene kan brukes i kombinasjon for å iterere gjennom HashMap, sjekke om det er et neste nøkkelverdi-par og hente det.

Syntaks

Iterator iter = x. iterator ( ) ;

I denne syntaksen:

  • ' x ” er et samleobjekt.
  • ' iter ' er av typen Iterator-grensesnitt og tilsvarer ' x '.

Eksempel

La oss se på eksemplet nedenfor:

import java.util.Iterator ;

import java.util.Map.Entry ;

import java.util.HashMap ;

import java.util.Map ;

offentlig klasse Eksempel {

offentlig statisk tomrom hoved- ( String args [ ] ) {

Kart < Heltall , String > custom_hashmap = ny HashMap < Heltall , String > ( ) ;

custom_hashmap. sette ( 1 , 'Harry' ) ;

custom_hashmap. sette ( 2 , 'David' ) ;

custom_hashmap. sette ( 3 , 'Sara' ) ;

Iterator < Inngang < Heltall , String >> iter = custom_hashmap. oppføringSett ( ) . iterator ( ) ;

samtidig som ( iter. har Neste ( ) ) {

Kart . Inngang < Heltall , String > tildele = ( Kart . Inngang < Heltall , String > ) iter. neste ( ) ;

System . ute . println ( tildele. get Key ( ) + ':' + tildele. getValue ( ) ) ;

} } }

I demonstrasjonen ovenfor, bruk følgende trinn:

  • Gjenta de diskuterte metodene for å lage en ' HashMap ' og tildele ' nøkkelverdi ' par.
  • Tilknytt nå ' Iterator '-objektet med det opprettede HashMap-et og gå gjennom nøkkelverdi-parene ved hjelp av ' entrySet() ' og ' iterator() 'metoder.
  • Til slutt, undersøk HashMap ved å sjekke det neste elementet via den brukte ' hasNext() 'metoden. Vis i så fall neste element ved å bruke ' neste() 'metoden.
  • Den vedlagte ' getKey() ' og ' getValue() '-metoder vil sørge for at det akkumulerte elementet hentes i form av en ' nøkkelverdi ' par.

Produksjon

Ovennevnte utgang betyr at iterasjonen er utført på riktig måte.

Konklusjon

en ' HashMap ' lagrer varer i ' nøkkelverdi ' par. Det kan gjentas ved hjelp av ' til 'løkke, ' for hver() '-metoden, eller ' Iterator ' objekt. Iterasjonen langs et HashMap kan gjøres enkelt ved å få tilgang til hvert nøkkelverdi-par, eller ved å referere til det neste elementet. Denne bloggen utdypet tilnærmingene for å iterere et HashMap i Java.