Trong ví dụ này, chúng ta sẽ học cách lặp lại các khóa, giá trị và ánh xạ khóa / giá trị của một Java HashMap.
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình Java sau:
- Java HashMap
- Java cho từng vòng lặp
- Giao diện lặp lại Java
Trong Java HashMap, chúng ta có thể lặp qua các khóa , giá trị và ánh xạ khóa / giá trị của nó .
Ví dụ 1: Lặp lại qua HashMap bằng vòng lặp 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(", "); ) ) )
Đầu ra
HashMap: (Java = Enterprise, JavaScript = Frontend, Python = ML / AI) Các mục: Java = Enterprise, JavaScript = Frontend, Python = ML / AI, Keys: Java, JavaScript, Python, Values: Enterprise, Frontend, ML / AI ,
Trong ví dụ trên, chúng tôi đã tạo một bản đồ băm có tên các ngôn ngữ. Ở đây, chúng tôi đã sử dụng forEach
vòng lặp để lặp qua các phần tử của bản đồ băm.
Lưu ý rằng chúng tôi đang lặp lại độc lập qua các khóa , giá trị và ánh xạ khóa / giá trị .
- ngôn ngữ.entrySet () - trả về chế độ xem tập hợp của tất cả các mục nhập
- ngôn ngữ.keySet () - trả về chế độ xem tập hợp của tất cả các phím
- ngôn ngữ.values () - trả về chế độ xem tập hợp của tất cả các giá trị
Lưu ý : Chúng tôi đã sử dụng Map.Entry
lớp học. Nó là lớp lồng nhau trả về một dạng xem bản đồ.
Ví dụ 2: Lặp lại qua HashMap bằng cách sử dụng 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(", "); ) ) )
Đầu ra
HashMap: (Java = Enterprise, JavaScript = Frontend, Python = ML / AI) Các mục: Java = Enterprise, JavaScript = Frontend, Python = ML / AI, Keys: Java, JavaScript, Python, Values: Enterprise, Frontend, ML / AI ,
Trong ví dụ trên, chúng ta đang lặp lại các khóa, giá trị và ánh xạ khóa / giá trị của bản đồ băm. Chúng tôi đã sử dụng iterator()
phương pháp này để lặp lại bản đồ băm. Đây,
- hasNext () - trả về
true
nếu có phần tử tiếp theo trong bản đồ băm - next () - trả về phần tử tiếp theo của hashmap
Lưu ý : Chúng ta cũng có thể sử dụng phương thức HashMap forEach () để lặp qua bản đồ băm.