In dit voorbeeld zullen we leren om sleutels, waarden en sleutel / waarde-toewijzingen van een Java HashMap te herhalen.
Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende Java-programmeeronderwerpen:
- Java HashMap
- Java voor elke lus
- Java Iterator-interface
In Java HashMap kunnen we de sleutels , waarden en sleutel / waarde- toewijzingen doorlopen .
Voorbeeld 1: herhaal door HashMap met behulp van de forEach-lus
import java.util.HashMap; import java.util.Map.Entry; class Main ( public static void main(String() args) ( // Creating a HashMap HashMap languages = new HashMap(); languages.put("Java", "Enterprise"); languages.put("Python", "ML/AI"); languages.put("JavaScript", "Frontend"); System.out.println("HashMap: " + languages); // iterating through key/value mappings System.out.print("Entries: "); for(Entry entry: languages.entrySet()) ( System.out.print(entry); System.out.print(", "); ) // iterating through keys System.out.print("Keys: "); for(String key: languages.keySet()) ( System.out.print(key); System.out.print(", "); ) // iterating through values System.out.print("Values: "); for(String value: languages.values()) ( System.out.print(value); System.out.print(", "); ) ) )
Uitvoer
HashMap: (Java = Enterprise, JavaScript = Frontend, Python = ML / AI) Entries: Java = Enterprise, JavaScript = Frontend, Python = ML / AI, Keys: Java, JavaScript, Python, Values: Enterprise, Frontend, ML / AI ,
In het bovenstaande voorbeeld hebben we een hashmap gemaakt met de naam talen. Hier hebben we de forEach
lus gebruikt om de elementen van de hashmap te doorlopen.
Merk op dat we onafhankelijk bezig zijn met het doorlopen van de sleutels , waarden en sleutel / waarde- toewijzingen.
- Languages.entrySet () - retourneert de ingestelde weergave van alle items
- talen.keySet () - retourneert de ingestelde weergave van alle sleutels
- talen.values () - retourneert de ingestelde weergave van alle waarden
Opmerking : we hebben de Map.Entry
klas gebruikt. Het is de geneste klasse die een weergave van de kaart teruggeeft.
Voorbeeld 2: Itereer door HashMap met iterator ()
import java.util.HashMap; import java.util.Iterator; import java.util.Map.Entry; class Main ( public static void main(String() args) ( // create a HashMap HashMap languages = new HashMap(); languages.put("Java", "Enterprise"); languages.put("Python", "ML/AI"); languages.put("JavaScript", "Frontend"); System.out.println("HashMap: " + languages); // create an object of Iterator Iterator iterate1 = languages.entrySet().iterator(); // iterate through key/value mappings System.out.print("Entries: "); while(iterate1.hasNext()) ( System.out.print(iterate1.next()); System.out.print(", "); ) // iterate through keys Iterator iterate2 = languages.keySet().iterator(); System.out.print("Keys: "); while(iterate2.hasNext()) ( System.out.print(iterate2.next()); System.out.print(", "); ) // iterate through values Iterator iterate3 = languages.values().iterator(); System.out.print("Values: "); while(iterate3.hasNext()) ( System.out.print(iterate3.next()); System.out.print(", "); ) ) )
Uitvoer
HashMap: (Java = Enterprise, JavaScript = Frontend, Python = ML / AI) Entries: Java = Enterprise, JavaScript = Frontend, Python = ML / AI, Keys: Java, JavaScript, Python, Values: Enterprise, Frontend, ML / AI ,
In het bovenstaande voorbeeld herhalen we sleutels, waarden en sleutel / waarde-toewijzingen van de hash-kaart. We hebben de iterator()
methode gebruikt om de hashmap te herhalen. Hier,
- hasNext () - retourneert
true
als er het volgende element in de hashmap staat - next () - geeft het volgende element van de hashmap terug
Opmerking : we kunnen ook de HashMap forEach () - methode gebruiken om de hashmap te herhalen.