gpt4 book ai didi

arrays - `forEach((c) => c())` 在 Dart 中是什么意思?

转载 作者:行者123 更新时间:2023-12-03 02:44:43 25 4
gpt4 key购买 nike

我无法理解这段代码的最后一行。
callbacks.add(() => print(i)); 对我来说似乎很明显:添加将 i 打印到数组的匿名函数。

但是.forEach((c) => c());我看不懂。
=> 据我所知将函数的标题与主体分开,所以它看起来像我的函数声明。但它看起来像为每个函数声明这个函数 - 但那是无稽之谈。

var callbacks = [];
for (var i = 0; i < 2; i++) {
callbacks.add(() => print(i));
}
callbacks.forEach((c) => c());

最佳答案

(c) => c() 定义了一个带有无类型参数的匿名函数,c。为列表中的每个项目调用的函数执行 c 引用的回调函数。此外,(c) => c() 函数在其主体中仅包含一个语句 c(),因此,它使用 => 缩短- 胖箭头符号。否则,它可以写成 (c) { c(); }

参见 anonymous functions详情

关于arrays - `forEach((c) => c())` 在 Dart 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51227165/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com