List<E>.filled 构造函数

List<E>.filled(
  1. int length,
  2. E fill,
  3. {bool growable = false}
)

创建一个指定长度的列表,每个位置都有 fill 值。

length 必须是非负整数。

示例

final zeroList = List<int>.filled(3, 0, growable: true); // [0, 0, 0]

如果 growable 为 false(默认值),则创建的列表是固定长度的;如果 growable 为 true,则列表可增长。如果列表可增长,增加其 length 不会用 fill 初始化新条目。在创建并填充之后,列表与其他使用 [] 或其他 List 构造函数创建的可增长或固定长度的列表没有区别。

创建的列表的所有元素共享相同的 fill 值。

final shared = List.filled(3, []);
shared[0].add(499);
print(shared);  // [[499], [499], [499]]

您可以使用 List.generate) 创建一个带有固定长度并在每个位置都有一个新对象的列表。

final unique = List.generate(3, (_) => []);
unique[0].add(499);
print(unique); // [[499], [], []]

实现

external factory List.filled(int length, E fill, {bool growable = false});