函数

一、命名参数

命名参数是可选的,除非它们被明确标记required

1.1参数可选

1
2
3
4
5
6
void enableFlags({bool? bold, bool? hidden}) {
}

enableFlags(bold: true, hidden: false); // true false

enableFlags(bold:true); // true null

1.2默认参数

要在命名的参数中为 null 之外定义默认值,使用 = 指定默认值。

1
2
3
4
5
6
void enableFlags({bool bold = false, bool hidden = false}) {
print(bold);
print(hidden);

}
enableFlags(bold: true); // true false

1.3必须参数

1
2
3
4
void enableFlags({bool bold = false, required bool hidden}) {
print(bold);
print(hidden);
}

二、main函数

每个应用都必须有一个顶层 main() 函数,它作为应用的入口点。该 main() 函数返回 void,并有一个可选的 List<String> 参数用于参数。

1
2
3
4
5
6
7
8
9
10
11
12
void main() {
print('Hello, World!');
}


void main(List<String> arguments) {
print(arguments);

assert(arguments.length == 2);
assert(int.parse(arguments[0]) == 1);
assert(arguments[1] == 'test');
}

三、函数作为一等对象

你可以将一个函数作为参数传递给另一个函数。

1
2
3
4
5
6
7
8
void printElement(int element) {
print(element);
}

var list = [1, 2, 3];

// Pass printElement as a parameter.
list.forEach(printElement);

四、函数类型

你可以指定函数的类型,这被称为 函数类型 。

1
2
void greet(String name, {String greeting = 'Hello'}) =>
print('$greeting $name!');

五、匿名函数

虽然大多数函数都有名字,比如 main() 或 printElement(),但你也可以创建没有名字的函数。这些函数被称为 匿名函数

本文作者:finyou

本文链接:http://finyou.top/2026/04/08/flutter/dart/function/

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!

ESC 关闭 | 导航 | Enter 打开
输入关键词开始搜索