openplanning

Kiểu dữ liệu Boolean trong Dart

Xem thêm các chuyên mục:

Nhóm phát triển của chúng tôi vừa ra mắt website langlearning.net học tiếng Anh, Nga, Đức, Pháp, Việt, Trung, Hàn, Nhật, ... miễn phí cho tất cả mọi người.
Là một website được viết trên công nghệ web Flutter vì vậy hỗ trợ rất tốt cho người học, kể cả những người học khó tính nhất.
Hiện tại website đang tiếp tục được cập nhập nội dung cho phong phú và đầy đủ hơn. Mong các bạn nghé thăm và ủng hộ website mới của chúng tôi.
Hãy theo dõi chúng tôi trên Fanpage để nhận được thông báo mỗi khi có bài viết mới. Facebook

1- Boolean

Trong ngôn ngữ lập trình Dart, bool là kiểu dữ liệu được hỗ trợ sẵn, nó chỉ bao gồm 2 giá trị là truefalse.
bool cũng là tên của lớp đại diện cho kiểu dữ liệu này.
Cú pháp để khai báo một biến kiểu bool:

bool myVariable1 = true;

bool myVariable2 = false;
Ví dụ:
bool_ex1.dart

void main() {
  bool value;
  value = 100 > 25;
  print(value); // true
}
Output:

true

2- Dart Boolean vs Javascript Boolean

Ngôn ngữ lập trình Dart đã vay mượn rất nhiều ý tưởng từ JavaScript, đó là lý do vì sao nó rất dễ dàng được chuyển đổi thành mã JavaScript. Tuy nhiên kiểu dữ liệu bool trong DartJavaScript có một vài khác biệt.
  • Trong JavaScript các giá trị false, 0, "", null, undefined, NaNNumber.Infinite được coi là false. Các giá trị khác được coi là true.
  • Trong Dart, chỉ truefalse được coi là kiểu bool, các giá trị khác không thể chuyển đổi thành kiểu bool.
Trong JavaScript bạn có thể viết đoạn code giống dưới đây, và nó được chấp nhận là hợp lệ:
Javascript code

var test = "abc";

if(test) {
   console.log("OK! test is true");
} else {
   console.log("Ohh no, test is false");
}
Output:

OK! test is true
Tuy nhiên bạn không thể viết một đoạn code tương tự trong Dart:
Dart code (ERROR!)

void main() {
  var test = "abc";

  if (test) { // ERROR at compile time.
    print("OK! test is true");
  } else {
    print("Ohh no, test is false");
  }
}
Bạn sẽ nhận được thông báo lỗi từ trình biên dịch Dart:

Error compiling to JavaScript:
Warning: Interpreting this as package URI, 'package:dartpad_sample/main.dart'.
lib/main.dart:4:7:
Error: A value of type 'String' can't be assigned to a variable of type 'bool'.
  if (test) { // ERROR at compile time.
      ^
Error: Compilation failed.

Xem thêm các chuyên mục: