如何在 Dart 中使用 List generate

3,337 阅读1分钟

Dart 中非常方便的实用工具之一就是能够生成值列表。在本文中,将向您展示如何在 Dart 和 Flutter 中使用 List generate。

列表在 Dart 和 Flutter 中生成

在 Dart 中,核心库提供了一种实用程序方法来处理 List 数据结构的值生成,因为生成或制作虚拟数据是很常见的任务。这里的定义:

List<E>.generate(
  int length,
  E generator(
    int index
  ), {
  bool growable: true
})
  • length: 指定列表的大小。
  • generator: 生成列表值的生成器函数

1. 生成数字列表

这将产生从1到10的所有数字

List<int>.generate(10, (i) => i + 1)

我们可以生成所有平方数

List<int>.generate(10, (i) => i * i)

2. 生成虚拟文本列表

以一个简单的用例为例,您想在 Flutter 应用中快速模拟 UI,并需要一个虚拟项目列表

class Person {
  final String name;
  final String avatarUrl;

  Person({this.name, this.avatarUrl});
}

void main() {
  var dummyPersonList = List<Person>.generate(20, (i) {
    return Person(
      name: 'John Doe',
      avatarUrl: 'http://somewebsite.com/dummy_avatar.jpg',
    );
  });
}