在Dart中,函数参数后的问号(?)表示该参数是可选的。这意味着在调用函数时可以选择性地省略该参数。
使用问号标记的可选参数有两种类型:
示例:
void greet({String name, int age}) {
print("Hello, $name! You are $age years old.");
}
greet(name: "Alice", age: 25); // 输出:Hello, Alice! You are 25 years old.
greet(age: 30, name: "Bob"); // 输出:Hello, Bob! You are 30 years old.
greet(name: "Charlie"); // 输出:Hello, Charlie! You are null years old.
在上面的示例中,name
和age
参数都是可选的。调用函数时,可以根据需要传递这些参数,也可以选择性地省略它们。
示例:
void printNumbers(int a, [int b, int c]) {
print("Numbers: $a, $b, $c");
}
printNumbers(1, 2, 3); // 输出:Numbers: 1, 2, 3
printNumbers(4, 5); // 输出:Numbers: 4, 5, null
printNumbers(6); // 输出:Numbers: 6, null, null
在上面的示例中,b
和c
参数都是可选的位置参数。调用函数时,可以根据需要传递这些参数,也可以选择性地省略它们。
总结: Dart中函数参数后的问号表示该参数是可选的。可选参数分为命名可选参数和位置可选参数。命名可选参数使用大括号({})包装参数,并在参数名称后面加上问号;位置可选参数使用方括号([])包装参数,并在参数名称后面加上问号。这样的可选参数可以根据需要进行传递或省略。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云