I det här exemplet lär vi oss att iterera över nycklar, värden och nyckel / värde mappningar av en Java HashMap.
För att förstå detta exempel bör du ha kunskap om följande Java-programmeringsämnen:
- Java HashMap
- Java för varje slinga
- Java Iterator-gränssnitt
I Java HashMap kan vi iterera genom dess nycklar , värden och nyckel / värde mappningar.
Exempel 1: Iterera via HashMap med hjälp av forEach-slingan
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(", "); ) ) )
Produktion
HashMap: (Java = Enterprise, JavaScript = Frontend, Python = ML / AI) Inlägg: Java = Enterprise, JavaScript = Frontend, Python = ML / AI, Nycklar: Java, JavaScript, Python, Värden: Enterprise, Frontend, ML / AI ,
I exemplet ovan har vi skapat en hashmap med namnet språk. Här har vi använt forEach
slingan för att iterera genom elementen i hashmap.
Lägg märke till att vi oberoende itererar genom nycklar , värden och nyckel / värde mappningar.
- languages.entrySet () - returnerar den inställda vyn för alla poster
- languages.keySet () - returnerar den inställda vyn för alla tangenter
- languages.values () - returnerar den inställda vyn för alla värden
Obs! Vi har använt Map.Entry
klassen. Det är den kapslade klassen som returnerar en vy över kartan.
Exempel 2: Iterera via HashMap med 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(", "); ) ) )
Produktion
HashMap: (Java = Enterprise, JavaScript = Frontend, Python = ML / AI) Inlägg: Java = Enterprise, JavaScript = Frontend, Python = ML / AI, Nycklar: Java, JavaScript, Python, Värden: Enterprise, Frontend, ML / AI ,
I exemplet ovan itererar vi genom nycklar, värden och nyckel- / värdekartläggningar av hashkartan. Vi har använt iterator()
metoden för att itera över hashmap. Här,
- hasNext () - returnerar
true
om det finns nästa element i hashmap - nästa () - returnerar nästa element i hashmap
Obs! Vi kan också använda metoden HashMap forEach () för att iterera över hashmap.