Java Tut 37: Java HashMap

0
0
(0)

Java HashMap

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ị:

Thí dụ

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>();


Thêm các mục

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:

Thí dụ

// 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);
  }
}

Hãy tự mình thử »


Truy cập một mục

Để 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ó:

Thí dụ

capitalCities.get("England");

Hãy tự mình thử »


Xóa một mục

Để xóa một mục, hãy sử dụng remove()phương pháp này và tham khảo khóa:

Thí dụ

capitalCities.remove("England");

Hãy tự mình thử »

Để xóa tất cả các mục, hãy sử dụng clear()phương pháp:

Thí dụ

capitalCities.clear();

Hãy tự mình thử »



Kích thước HashMap

Để biết có bao nhiêu mục, hãy sử dụng size()phương pháp:

Thí dụ

capitalCities.size();

Hãy tự mình thử »


Lặp lại qua một HashMap

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ị:

Thí dụ

// Print keys
for (String i : capitalCities.keySet()) {
  System.out.println(i);
}

Hãy tự mình thử »

Thí dụ

// Print values
for (String i : capitalCities.values()) {
  System.out.println(i);
}

Hãy tự mình thử »

Thí dụ

// Print keys and values
for (String i : capitalCities.keySet()) {
  System.out.println("key: " + i + " value: " + capitalCities.get(i));
}

Hãy tự mình thử »


Các loại khác

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.:

Thí dụ

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));
    }
  }
}

Hãy tự mình thử »

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

Leave A Reply

Your email address will not be published.