Menu
CoddyTech

Truy cập giá trị bằng khóa

Thuộc phần Kiến thức cơ bản trong hành trình Dart của Coddy. Bài học 58 trên 94.

Cú pháp dấu ngoặc vuông cho phép bạn truy cập các giá trị trong từ điển bằng khóa tương ứng.

Tạo một từ điển điểm số của học sinh:

Map<String, int> scores = {
  'Alice': 95,
  'Bob': 85,
  'Charlie': 90
};

Truy cập giá trị bằng khóa của nó. Lệnh tra cứu trả về null khi khóa không có trong bản đồ, vì vậy kết quả có kiểu nullable là int?:

int? aliceScore = scores['Alice'];
print('Alice\'s score: $aliceScore');

Sau khi chạy đoạn code trên, đầu ra sẽ là:

Alice's score: 95

Bạn cũng có thể dùng biến làm khóa để tra cứu giá trị:

String student = 'Bob';
int? bobScore = scores[student];
print('$student\'s score: $bobScore');

Sau khi chạy đoạn code trên, đầu ra sẽ là:

Bob's score: 85
challenge icon

Thử thách

Người mới

Trong thử thách này, bạn sẽ luyện cách truy cập giá trị trong map bằng khóa. Map trong Dart lưu trữ dữ liệu dưới dạng cặp khóa-giá trị, và bạn có thể lấy giá trị bằng khóa tương ứng.

Hoàn thành đoạn code dưới đây để truy cập điểm số của học sinh tên là 'Bob' từ map studentScores và lưu điểm đó vào biến bobScore.

Đầu ra dự kiến:

Bob's score is: 85

Tự làm thử

void main() {
  // Map này đã có sẵn cho bạn
  Map<String, int> studentScores = {
    'Alice': 95,
    'Bob': 85,
    'Charlie': 90
  };
  
  // TODO: Lấy điểm của Bob từ map và lưu vào biến (variable) bên dưới
  int? bobScore = 0; // Thay bằng đoạn code đúng
  
  // Dòng này sẽ hiển thị điểm của Bob
  print("Bob's score is: $bobScore");
}
quiz iconTự kiểm tra

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 Kiến thức cơ bản

Tự luyện tập: Trình biên dịch Dart online