命名参数
本课属于 Coddy Dart 学习旅程的“基础知识”单元。第 73 课,共 94 课。
Dart 中的命名参数允许你通过名称而不是位置来指定函数参数。它们在函数声明中用花括号 {} 定义。默认情况下,它们是可选的。调用时如果省略了没有默认值的可选命名参数,它的值就是 null,因此它的类型必须是可空类型,例如 String? 或 int?。
创建一个带有命名参数的函数:
void greet({String? name, int? age}) {
print('Hello, $name! You are $age years old.');
}
void main() {
greet(name: 'Dart', age: 12);
}运行上面的代码后,输出将是:
Hello, Dart! You are 12 years old.调用带命名参数的函数时,先写参数名,再写冒号:
void main() {
// 参数可以按任意顺序排列
greet(age: 30, name: 'Alice');
}运行上述代码后,输出将是:
Hello, Alice! You are 30 years old.挑战
入门在这个挑战中,你将练习在 Dart 中使用命名参数。调用函数时指定参数名称,可以让函数调用更易读。
为 greetUser 函数添加 name 和 age 命名参数,完成这个函数。然后使用提供的值调用该函数。
预期输出:
Hello, Alice! You are 25 years old.亲手试试
void main() {
// 这些值已经为你定义好了
String userName = 'Alice';
int userAge = 25;
// TODO:使用命名参数调用 greetUser 函数
// 将 userName 传给 name 参数,将 userAge 传给 age 参数
// 函数定义在下方
}
// TODO:修改这个函数,使用命名参数代替位置参数
// 提示:用花括号 {} 括住参数
void greetUser({required String name, required int age}) {
print('Hello, $name! You are $age years old.');
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Dart 在线编译器