Program Java do iteracji po HashMap

W tym przykładzie nauczymy się iterować po kluczach, wartościach i mapowaniach klucz / wartość w Java HashMap.

Aby zrozumieć ten przykład, należy znać następujące tematy dotyczące programowania w języku Java:

  • Java HashMap
  • Java dla każdej pętli
  • Interfejs iteratora Java

W Javie HashMap możemy iterować poprzez klucze , wartości i mapowania klucz / wartość .

Przykład 1: Iteracja przez HashMap przy użyciu pętli 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(", "); ) ) )

Wynik

 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 ,

W powyższym przykładzie utworzyliśmy hashmap o nazwie języki. Tutaj użyliśmy forEachpętli do iteracji przez elementy tablicy mieszającej.

Zauważ, że niezależnie przechodzimy przez klucze , wartości i mapowania klucz / wartość .

  • języki.entrySet () - zwraca ustawiony widok wszystkich wpisów
  • języki.keySet () - zwraca ustawiony widok wszystkich kluczy
  • Languages.values ​​() - zwraca ustawiony widok wszystkich wartości

Uwaga : użyliśmy Map.Entryklasy. Jest to klasa zagnieżdżona, która zwraca widok mapy.

Przykład 2: Iteracja przez HashMap przy użyciu 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(", "); ) ) ) 

Wynik

 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 ,

W powyższym przykładzie iterujemy przez klucze, wartości i mapowania klucz / wartość mapy hash. Użyliśmy tej iterator()metody do iteracji po hasmacie. Tutaj,

  • hasNext () - zwraca, truejeśli w hashmap jest następny element
  • next () - zwraca następny element tablicy mieszania

Uwaga : możemy również użyć metody HashMap forEach () do iteracji po hashmap.

Interesujące artykuły...