List data = [1, 2, 3];
data.forEach((value) {
  if (value == 2) {
    // how to stop?
  }
  print(value);
});

我try 了在jQuery中工作的return false;,但在Dart中不起作用.

推荐答案

您还可以使用for/in,它隐式地使用了在另一个答案中恰当演示的迭代器:

List data = [1,2,3];

for(final i in data){
  print('$i');
  if (i == 2){
    break;
  }
}

Dart相关问答推荐

Dart 中 ThemeData 类的 copyWith() 方法

根据 Id 比较两个不同的 List

停止在缓存中保存 Flutter Web Firebase 托管

I/flutter (22027):MissingPluginException(在通道 plugins.flutter.io/cloud_firestore 上找不到方法 DocumentReference#setData 的实现)

Swipe返回手势

为什么Dart中的 abs() 函数在没有用括号括起来时返回负数?

如何用 Flutter 在同屏路由上制作英雄风格的动画?

为什么使用Dart作为前端开发人员?

如何使用 Dart 动态加载 HTML 并插入我的网页?

如何在Flutter 的http.MultipartRequest请求上上传文件时获取进度事件

Dart:默认 gitignore?

dart2js代码比javascript快多少?

如何将 转换为 List

全局减慢 Flutter 中的动画

在 Dart 中使用固定长度列表有性能优势吗?

如何在 Dart 中将字符串转换为 utf8?

Dart 中的外部是什么意思?

Angular.js 和 Angular.dart 的区别?

Dart 中的函数类型定义(typedefs)/函数类型别名(function-type aliases)是什么?

List firstWhere Bad state: No element