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', ); }); }
在 Dart 中,核心库提供了一种实用程序方法来处理 List 数据结构的值生成,因为生成或制作虚拟数据是很常见的任务。这里的定义:
List<E>.generate( int length, E generator( int index ), { bool growable: true })
- length: 指定列表的大小。
- generator: 生成列表值的生成器函数
- List.filled(int length,E fill,{bool growable:false}) 创建一个 list,每个元素共享相同的值,growable 表示是 list 长度是否可变,默认 false 固定长度