Dart 基础 – 内置类型 – 布尔
内容目录
						
						版权归作者 ©刘龙宾 所有,本文章未经作者允许,禁止私自转载!
1. 定义布尔变量
Dart 使用 bool 关键字表示布尔类型,布尔类型只有两个对象 true 和 false,两者都是编译时常量。
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、空字符串、null、undefined 这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 中的全等判断 ===。
版权归作者 ©刘龙宾 所有,本文章未经作者允许,禁止私自转载!