În acest exemplu, vom învăța să repetăm cheile, valorile și mapările cheie / valoare ale unui HashMap Java.
Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele despre următoarele subiecte de programare Java:
- Java HashMap
- Java pentru fiecare buclă
- Interfață Iterator Java
În Java HashMap, putem itera prin cheile , valorile și mapările cheie / valoare .
Exemplul 1: Iterează prin HashMap folosind bucla forEach
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(", "); ) ) )
Ieșire
HashMap: (Java = Enterprise, JavaScript = Frontend, Python = ML / AI) Intrări: Java = Enterprise, JavaScript = Frontend, Python = ML / AI, Taste: Java, JavaScript, Python, Valori: Enterprise, Frontend, ML / AI ,
În exemplul de mai sus, am creat un hashmap numit limbi. Aici, am folosit forEach
bucla pentru a itera prin elementele hashmap-ului.
Observați că facem o iterație independentă prin chei , valori și mapări cheie / valoare .
- languages.entrySet () - returnează vizualizarea setată a tuturor intrărilor
- languages.keySet () - returnează vizualizarea setată a tuturor tastelor
- languages.values () - returnează vizualizarea setată a tuturor valorilor
Notă : Am folosit Map.Entry
clasa. Este clasa imbricată care returnează o vizualizare a hărții.
Exemplul 2: Iterează prin HashMap folosind iteratorul ()
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(", "); ) ) )
Ieșire
HashMap: (Java = Enterprise, JavaScript = Frontend, Python = ML / AI) Intrări: Java = Enterprise, JavaScript = Frontend, Python = ML / AI, Taste: Java, JavaScript, Python, Valori: Enterprise, Frontend, ML / AI ,
În exemplul de mai sus, iterăm prin chei, valori și mapări cheie / valoare ale hărții hash. Am folosit iterator()
metoda pentru a itera peste hashmap. Aici,
- hasNext () - returnează
true
dacă există următorul element în hashmap - next () - returnează următorul element al hashmap-ului
Notă : Putem folosi și metoda HashMap forEach () pentru a itera peste hashmap.