dart

Dart 基础 – 内置类型 – 布尔

内容纲要

版权归作者 ©刘龙宾 所有,本文章未经作者允许,禁止私自转载!

1. 定义布尔变量

Dart 使用 bool 关键字表示布尔类型,布尔类型只有两个对象 truefalse,两者都是编译时常量

void main(List<String> args) {
  // 定义布尔变量 boo,并赋值为 true
  bool boo = true;
  // 定义布尔变量 foo,并赋值为 false
  bool foo = false;

  print(boo); // 输出 true
  print(foo); // 输出 false
}

2. 布尔值判断

在实际开发中,bool 类型经常会结合条件判断语句一起使用。在 Dart 中进行布尔值判断时,必须显示地进行判断,不允许使用类似 JavaScript 的隐式转换。例如:在 JavaScript 中,NaN数字 0空字符串nullundefined 这5个值会默认转换为 false,其余值都默认转换为 true。但是在 Dart 中没有隐式转换,必须显示地进行判断:

void main(List<String> args) {
  String name = '';
  // 1. 判断 name 是否为空字符串
  if (name.isEmpty) {
    print('用户名为空');
  } else {
    print('你好' + name);
  }

  int age = 17;
  // 2. 判断是“成年人”还是“未成年”
  if (age >= 18) {
    print('成年人,抽烟喝酒烫头');
  } else {
    print('未成年, 娃哈哈旺仔AD钙');
  }

  int? count = int.tryParse('x');
  // 3. 判断 count 的值是否为 null
  if (count == null) {
    print('数字转换失败!');
  } else {
    print('数字转换成功:$count');
  }

  double result = 0 / 0;
  // 4. 判断是数字运算的结果是否为 NaN
  if (result.isNaN) {
    print('计算失败 NaN');
  } else {
    print('计算的结果是:$result');
  }
}

在 Dart 中一律使用双等号 == 进行相等判断,不支持 JavaScript 中的全等判断 ===。

版权归作者 ©刘龙宾 所有,本文章未经作者允许,禁止私自转载!

一个自由の前端程序员

留言

您的电子邮箱地址不会被公开。 必填项已用 * 标注