我正在学习Dart,并经常看到以下习语:

someFuture.then((_) => someFunc());

我还看到过如下代码:

someOtherFuture.then(() => someOtherFunc());

这两个例子在功能上有区别吗?

考虑到Dart使用_作为声明私有函数的前缀,这尤其令人困惑.

推荐答案

它是一个名为_的变量,通常是因为您计划不使用它并将其丢弃.例如,您可以改用名称xfoo. (_)()之间的区别很简单,因为一个函数接受参数,而另一个函数不接受参数.

DON’T use a leading underscore for identifiers that aren’t private.

Exception:一个未使用的参数可以被命名为u、_u、_u等等

https://dart.dev/guides/language/effective-dart/style

Dart相关问答推荐

dart 日期时差(分钟)

从GTIN中提取GS1公司前缀

将Card添加到 ListView

从 PopupMenuItem 中删除填充(overflow menu)

如何在 Dart 中等待单元测试中的异步设置?

如何在 Flutter CustomPainter 中使用Bezier Curves绘制形状

Flatter Container()与SizedBox()的虚拟空容器

在Flatter中导航后,无法关注新页面中的文本字段

dart:web_gl: 渲染警告:texture bound to texture unit 0 is not renderable

如何在 Dart 中获取数字的长度?

Flutter – 连续两个文本,左边一个溢出

Dart 构造函数与静态方法;例如,为什么 int.parse() 不是工厂构造函数?

Dart:将十进制转换为十六进制

以编程方式使dart中的十六进制 colored颜色 变亮或变暗

Dart:将map转换为查询字符串

如何在 Ubuntu 网络服务器上为 Dart 安装 pub(命令行使用)

具有 Maps 的 Null 感知运算符

如何在 Dart 中扩展列表?

Dart 中使用的包命名约定是什么?

判断dart中的字符串是否为数字