如何在DART中轻松创建一系列连续整数?例如:

// throws a syntax error :)
var list = [1..10];

推荐答案

您可以使用List.generate constructor:

var list = new List<int>.generate(10, (i) => i + 1);

您也可以使用生成器:

/// the list of positive integers starting from 0
Iterable<int> get positiveIntegers sync* {
  int i = 0;
  while (true) yield i++;
}
void main() {
  var list = positiveIntegers
      .skip(1)   // don't use 0
      .take(10)  // take 10 numbers
      .toList(); // create a list
  print(list);   // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
}

在DART 2.3之后,您可以使用collection for:

var list = [for (var i = 1; i <= 10; i++) i];

Dart相关问答推荐

在异步方法中,有没有更优雅的方式在DART中等待!=NULL?

dart run edge build cloudflare_workers --dev 命令在我的项目(笔记本电脑)中不起作用

?? ("if null") 运算符类型解析问题

您如何在元素中设置自定义元素标签的样式?

在Flutter中通过 Function(T) 传递泛型类型

Flutter pod 安装问题 - # 的未定义方法 `each_child'

如何从 Dart 中的映射中过滤空值

如何处理 ListView 滚动方向

自定义声音推送通知不起作用

Flutter 中 ChangeNotifier 的构建器小部件

如何更改Flatter DevTools的默认浏览器?

Dart:如何在异步函数中管理并发

dart中是否有类似struct struct 的东西?

dart - 数字格式

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

dart中的动态和对象有什么区别?

dart列表最小值/最大值

如何在 Dart 中运行重复出现的函数?

在 Dart 中是否有一种将 int 转换为 double 的快速方法?

如何在构造函数中初始化最终类属性?