Menu
CoddyTech

Xử lý lỗi chuyển đổi

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

Phương thức tryParse chuyển đổi chuỗi thành số một cách an toàn, trả về null thay vì gây ra lỗi khi không thể chuyển đổi.

Dùng tryParse thay vì parse để chuyển đổi an toàn hơn:

String validNumber = "42";
int? result = int.tryParse(validNumber);
print(result);

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

42

Khi chuyển đổi thất bại, tryParse trả về null:

String invalidNumber = "hello";
int? result = int.tryParse(invalidNumber);
print(result);

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

null
challenge icon

Thử thách

Người mới

Trong thử thách này, bạn sẽ luyện tập dùng tryParse để chuyển đổi chuỗi thành số một cách an toàn. Phương thức tryParse trả về null nếu chuyển đổi thất bại, thay vì ném ra lỗi như parse.

Hoàn thành code để chuyển đổi chuỗi userInput thành số nguyên bằng int.tryParse(). Nếu chuyển đổi thành công, hãy lưu kết quả vào userAge. Nếu chuyển đổi thất bại (trả về null), hãy dùng tuổi mặc định là 0.

Đầu ra dự kiến cho đầu vào hiện tại:

Invalid age input. Using default age: 0

Tự làm thử

void main() {
  // Chuỗi (string) này đã được khai báo sẵn cho bạn
  String userInput = 'twenty five';
  
  // TODO: Thử chuyển userInput thành số nguyên (integer) bằng int.tryParse()
  // Nếu thành công, lưu kết quả vào userAge
  // Nếu chuyển đổi thất bại (trả về null), dùng tuổi mặc định là 0
  int userAge = 0;
  
  // Hiển thị kết quả
  if (userInput == 'twenty five') {
    print('Invalid age input. Using default age: $userAge');
  } else {
    print('Valid age input: $userAge');
  }
}
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