Truy cập giá trị
Thuộc phần Logic và luồng chương trình trong hành trình Java của Coddy. Bài học 12 trên 59.
Trong HashMap, mỗi khóa (key) được liên kết với một giá trị (value). Để truy cập giá trị, bạn dùng phương thức (method) get() và cung cấp khóa.
Sau đó, HashMap trả về giá trị gắn với khóa đó. Nếu khóa không tồn tại trong HashMap, phương thức get() trả về null.
Đây là cú pháp cơ bản:
ValueType value = mapName.get(key);mapName: Tên củaHashMap.key: Khóa có giá trị liên kết mà bạn muốn lấy.ValueType: Kiểu dữ liệu của giá trị.
Ví dụ, trước tiên hãy định nghĩa HashMap:
HashMap<String, Integer> ages = new HashMap<>();
ages.put("Alice", 30);
ages.put("Bob", 25);Và bây giờ, hãy lấy các giá trị này:
Integer aliceAge = ages.get("Alice");
// Tuổi của Alice: 30
Integer charlieAge = ages.get("Charlie");
// Tuổi của Charlie: nullTrong ví dụ này, chúng ta lấy tuổi của Alice bằng khóa (key) "Alice". Vì "Charlie" không phải là khóa trong HashMap, charlieAge có giá trị null.
Thử thách
DễTạo một phương thức tên là getCapital nhận hai đối số:
- Một
HashMaptên làcapitals, trong đó các khóa là tên quốc gia (chuỗi) và các giá trị là tên thủ đô (chuỗi). - Một chuỗi
countrybiểu thị tên một quốc gia.
Phương thức này cần trả về thủ đô của quốc gia đã cho bằng cách truy cập HashMap capitals. Nếu không tìm thấy quốc gia trong HashMap, hãy trả về "Not found".
Tự làm thử
// Các module chuyển chuỗi biểu diễn hashmap thành hashmap
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
// -----------------------------
import java.util.HashMap;
import java.util.Scanner;
public class Main {
public static String getCapital(HashMap<String, String> capitals, String country) {
// Viết code của bạn bên dưới
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String hashMapString = scanner.nextLine();
String country = scanner.nextLine();
// Chuyển String biểu diễn HashMap thành HashMap
Type mapType = new TypeToken<HashMap<String, String>>(){}.getType();
HashMap<String, String> countryCapitals = new Gson().fromJson(hashMapString, mapType);
String result = getCapital(countryCapitals, country);
System.out.println(result);
}
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Logic và luồng chương trình
1Mảng đa chiều
Kiến thức cơ bản về mảng 2DTruy cập phần tử trong mảng 2DVòng lặp lồng nhau với mảng 2DÔn tập về mảng 2DPhép cộng và phép trừ ma trậnMảng không đềuMảng 3D trở lênCác mẫu thường gặp với mảng 2DÔn tập về mảng2HashMap phần 1
HashMap là gì?Khai báo HashMapTruy cập giá trịKiểm tra khóa có tồn tạiChỉnh sửa từ điểnÔn tập: HashMapTự luyện tập: Trình biên dịch Java online