dart语言学习(十九)— 闭包
程序员文章站
2022-05-02 13:09:06
...
-
含义
闭包是一个方法(对象)
闭包定义在其他方法内部
闭包能够访问外部方法内的局部变量,并持有其状态
-
案例
void main(List<String> args) {
var func = a();
for (var i = 0; i < 5; i++) {
func();
}
print("-------------------------");
var func1 = b();
for (var i = 0; i < 5; i++) {
func1();
}
}
a() {
int count = 0;
printCount() {
print(count++);
}
return printCount;
}
b() {
int count = 10;
return () {
print(--count);
};
}
0
1
2
3
4
-------------------------
9
8
7
6
5
Exited