Hur man itererar en HashMap i Java

Hur Man Itererar En Hashmap I Java



Medan du upprätthåller posterna i Java kan det finnas tillfällen där utvecklaren behöver komma åt en viss ' HashMap ” för att använda eller dumpa den. Till exempel att återanvända en viss uppsättning poster eller flytta en föråldrad uppsättning data till skräp. I sådana fall hjälper det att iterera en HashMap i Java för att komma åt data och hantera minnet effektivt.

Denna artikel kommer att diskutera metoderna för att iterera en 'HashMap' i Java.

Vad är en HashMap i Java?

en ' HashMap ' lagrar varor i form av ' nyckelvärde ”-par och dessa kan anropas av ett index av någon annan typ (t.ex. String). Det gör det också möjligt att lagra null-nycklarna.







Hur man itererar en HashMap i Java?

En HashMap i Java kan itereras med hjälp av nedanstående metoder:



Metod 1: Iterera en HashMap i Java med 'för' Loop

den ' entrySet() ”-metoden ger en uppsättningsvy av alla poster/element som finns i en hashmap. den ' getKey() ' och ' getValue() ”-metoder hämtar nyckeln respektive värdet från posten. Dessa tillvägagångssätt kan användas i kombination för att först komma åt hashmapen och iterera genom de ackumulerade nycklarna och värdena med hjälp av ' för ” slinga.



Syntax





hashmap. entrySet ( )

I ovanstående syntax, ' hashmap ' hänvisar till en ' HashMap ” klassobjekt.

Exempel

Låt oss överblicka exemplet nedan:



importera java.util.HashMap ;

importera java.util.Map ;

offentlig klass Exempel {

offentlig statisk tomhet huvud ( Sträng args [ ] ) {

Karta < Heltal , Sträng > custom_hashmap = ny HashMap < Heltal , Sträng > ( ) ;

custom_hashmap. sätta ( 1 , 'Harry' ) ;

custom_hashmap. sätta ( 2 , 'David' ) ;

custom_hashmap. sätta ( 3 , 'Sara' ) ;

för ( Karta . Inträde < Heltal , Sträng > uppsättning : custom_hashmap. entrySet ( ) ) {

Systemet . ut . println ( uppsättning. getKey ( ) + ':' + uppsättning. getValue ( ) ) ;

} }

}

I ovanstående kod:

  • Skapa först en ' HashMap ' som heter ' custom_hashmap ' så att nyckeln anges som en ' heltal ' och värde som ' sträng ' representeras i koden som ' Karta ”.
  • Efter det, associera ' sätta() ' metod med hashmap för att infoga de angivna värdena i form av ' nyckelvärde ” par.
  • Använd nu ' för ”-slinga i kombination med ” entrySet() ” metod för att iterera genom hashmap.
  • Observera att den angivna ' Map.Entry ”-gränssnittet gör det möjligt för användaren att arbeta med en kartpost.
  • Till sist, använd ' getKey() ' och ' getValue() ” metoder för att komma åt de tilldelade nycklarna och värdena och visa dem.

Produktion

I denna utgång kan det analyseras att de inställda nyckel-värdeparen itereras och visas.

Metod 2: Iterera en HashMap i Java med 'forEach()'-metoden

den ' för varje() ”-metoden används för att tillämpa en viss operation för varje element. Denna metod kan implementeras för att helt enkelt iterera genom varje nyckel-värdepar i ' HashMap ” och visa den.

Syntax

för varje ( med super OCH > x )

I ovanstående syntax tar denna metod en parameter ' x ” som motsvarar den åtgärd som måste utföras för varje element.

Exempel

Låt oss följa nedanstående kod:

importera java.util.HashMap ;

importera java.util.Map ;

offentlig klass Exempel {

offentlig statisk tomhet huvud ( Sträng args [ ] ) {

Karta < Heltal , Sträng > custom_hashmap = ny HashMap < Heltal , Sträng > ( ) ;

custom_hashmap. sätta ( 1 , 'Harry' ) ;

custom_hashmap. sätta ( 2 , 'David' ) ;

custom_hashmap. sätta ( 3 , 'Sara' ) ;

custom_hashmap. för varje ( ( nyckelvärde ) -> Systemet . ut . println ( nyckel + ':' + värde ) ) ;

} }

I illustrationen ovan:

  • Kom ihåg de diskuterade metoderna för att skapa en ' HashMap ” och allokera värdena i form av ” nyckelvärde ” par.
  • Koppla nu till ' för varje() '-metoden med den skapade HashMap och visa var och en av de itererade ' nyckelvärde ” parar på konsolen.

Produktion

Som du kan se att nycklarna och deras motsvarande värden i ' HashMap ” har upprepats.

Metod 3: Iterera en HashMap i Java med hjälp av 'Iterator'-objekt

den ' Iterator '-objekt används för att gå igenom elementen ett efter ett, och ' iterator() ”-metoden kan användas för att hämta en Iterator. den ' hasNext() 'metoden ger' Sann ' om det finns ett nästa element i hashmapen, och ' Nästa() ”-metoden ger nästa hashmap-element. Dessa tillvägagångssätt kan användas i kombination för att iterera genom HashMap, kontrollera om det finns ett nästa nyckel-värdepar och hämta det.

Syntax

Iterator iter = x. iterator ( ) ;

I denna syntax:

  • ' x ” är ett samlingsobjekt.
  • ' iter ' är av typen Iterator-gränssnitt och motsvarar ' x ”.

Exempel

Låt oss överblicka exemplet nedan:

importera java.util.Iterator ;

importera java.util.Map.Entry ;

importera java.util.HashMap ;

importera java.util.Map ;

offentlig klass Exempel {

offentlig statisk tomhet huvud ( Sträng args [ ] ) {

Karta < Heltal , Sträng > custom_hashmap = ny HashMap < Heltal , Sträng > ( ) ;

custom_hashmap. sätta ( 1 , 'Harry' ) ;

custom_hashmap. sätta ( 2 , 'David' ) ;

custom_hashmap. sätta ( 3 , 'Sara' ) ;

Iterator < Inträde < Heltal , Sträng >> iter = custom_hashmap. entrySet ( ) . iterator ( ) ;

medan ( iter. harNästa ( ) ) {

Karta . Inträde < Heltal , Sträng > tilldela = ( Karta . Inträde < Heltal , Sträng > ) iter. Nästa ( ) ;

Systemet . ut . println ( tilldela. getKey ( ) + ':' + tilldela. getValue ( ) ) ;

} } }

I demonstrationen ovan, tillämpa följande steg:

  • Upprepa de diskuterade metoderna för att skapa en ' HashMap ' och allokera ' nyckelvärde ” par.
  • Koppla nu till ' Iterator ”-objekt med den skapade HashMap och gå igenom nyckel-värde-paren med hjälp av ” entrySet() ' och ' iterator() ' metoder.
  • Slutligen, undersök HashMap genom att kontrollera nästa element via den tillämpade ' hasNext() 'metoden. Om så är fallet, visa nästa element med hjälp av ' Nästa() 'metoden.
  • Den bifogade ' getKey() ' och ' getValue() ”-metoder ser till att det ackumulerade elementet hämtas i form av ett ” nyckelvärde ' par.

Produktion

Ovanstående utdata betyder att iterationen är gjord på lämpligt sätt.

Slutsats

en ' HashMap ' lagrar varor i ' nyckelvärde ” par. Det kan upprepas med hjälp av ' för ' loop, den ' för varje() '-metoden eller ' Iterator ” objekt. Iterationen längs en HashMap kan enkelt göras genom att komma åt varje nyckel-värdepar, eller genom att referera till nästa element. Den här bloggen utvecklade metoderna för att iterera en HashMap i Java.