Trong ArrayListchương này, bạn đã biết rằng Mảng lưu trữ các mục dưới dạng một bộ sưu tập có thứ tự và bạn phải truy cập chúng bằng số chỉ mục ( intloại). Một HashMapTuy nhiên, lưu trữ các mục trong ” chìa khóa / giá trị cặp”, và bạn có thể truy cập chúng bằng một chỉ số của loại khác (ví dụ một String).
Một đối tượng được sử dụng làm khóa (chỉ mục) cho một đối tượng khác (giá trị). Nó có thể lưu trữ các loại khác nhau: Stringkhóa và Integergiá trị hoặc cùng một loại, như: Stringkhóa và Stringgiá trị:
Tạo một HashMapđối tượng gọi là capitalCities sẽ lưu trữ String các khóa và String giá trị :
import java.util.HashMap; // import the HashMap class HashMap<String, String> capitalCities = new HashMap<String, String>(); Các HashMaplớp học có nhiều phương pháp hữu ích. Ví dụ: để thêm các mục vào nó, hãy sử dụng put()phương pháp:
// Import the HashMap class import java.util.HashMap; public class Main { public static void main(String[] args) { // Create a HashMap object called capitalCities HashMap<String, String> capitalCities = new HashMap<String, String>(); // Add keys and values (Country, City) capitalCities.put("England", "London"); capitalCities.put("Germany", "Berlin"); capitalCities.put("Norway", "Oslo"); capitalCities.put("USA", "Washington DC"); System.out.println(capitalCities); } } Để truy cập một giá trị trong HashMap, hãy sử dụng get()phương thức và tham chiếu đến khóa của nó:
capitalCities.get("England"); Để xóa một mục, hãy sử dụng remove()phương pháp này và tham khảo khóa:
capitalCities.remove("England"); Để xóa tất cả các mục, hãy sử dụng clear()phương pháp:
capitalCities.clear(); Để biết có bao nhiêu mục, hãy sử dụng size()phương pháp:
capitalCities.size(); Lặp qua các mục của a HashMapvới một vòng lặp cho từng .
Lưu ý: Sử dụng keySet()phương thức nếu bạn chỉ muốn các khóa và sử dụng values()phương thức nếu bạn chỉ muốn các giá trị:
// Print keys for (String i : capitalCities.keySet()) { System.out.println(i); } // Print values for (String i : capitalCities.values()) { System.out.println(i); } // Print keys and values for (String i : capitalCities.keySet()) { System.out.println("key: " + i + " value: " + capitalCities.get(i)); } Các khóa và giá trị trong HashMap thực sự là các đối tượng. Trong các ví dụ trên, chúng tôi đã sử dụng các đối tượng kiểu “String”. Hãy nhớ rằng một chuỗi trong Java là một đối tượng (không phải là một kiểu nguyên thủy). Để sử dụng các loại khác, chẳng hạn như int, bạn phải xác định tương đương lớp wrapper : Integer. Đối với các kiểu nguyên thủy khác, hãy sử dụng: Booleancho boolean, Charactercho char, Doublecho đôi, v.v.:
Tạo một HashMapđối tượng được gọi là people sẽ lưu trữ String các khóa và Integer giá trị :
// Import the HashMap class import java.util.HashMap; public class Main { public static void main(String[] args) { // Create a HashMap object called people HashMap<String, Integer> people = new HashMap<String, Integer>(); // Add keys and values (Name, Age) people.put("John", 32); people.put("Steve", 30); people.put("Angie", 33); for (String i : people.keySet()) { System.out.println("key: " + i + " value: " + people.get(i)); } } } Lượt xem : 222
This is excellent news!
Haven't seen the build yet, I'll look now.
Checking the build now