Menu
CoddyTech

理解 null

本课属于 Coddy Dart 学习旅程的“基础知识”单元。第 77 课,共 94 课。

Dart 中的 Null 表示没有值。默认情况下,Dart 中的变量不能为 null,除非明确允许。

在类型后添加问号,创建一个可以为 null 的变量:

String? name = null;
print(name);

执行上面的代码后,输出为:

null

普通变量不能为 null,必须有值:

// 这样会导致错误:
// String name = null;

// 这样写是有效的:
String name = 'Dart';
print(name);

运行上面的代码后,输出将是:

Dart
challenge icon

挑战

简单

在这个挑战中,你将练习在 Dart 中使用可空变量。可空变量可以保存一个值,也可以保存 null。

补全代码,检查 username 变量是否为 null。如果是,就将字符串 "Guest" 赋给 displayName 变量。如果 username 不为 null,就将 username 的值赋给 displayName。

预期输出:

Welcome, Guest!

亲手试试

void main() {
  // 已经为你定义好了这个可为 null 的 String 变量
  String? username = null;
  
  // TODO:检查 username 是否为 null
  // 如果 username 为 null,将 displayName 设置为 "Guest"
  // 如果 username 不为 null,将 displayName 设置为 username 的值
  String displayName = "";
  
  // 这会显示欢迎消息
  print("Welcome, $displayName!");
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: Dart 在线编译器