toList 方法

List<E> toList(
  1. {bool growable = true}
)
override

创建一个包含此 Iterable 元素的 List

元素按迭代顺序排列。如果 growable 为 false,则列表是固定长度的。

示例

final planets = <int, String>{1: 'Mercury', 2: 'Venus', 3: 'Mars'};
final keysList = planets.keys.toList(growable: false); // [1, 2, 3]
final valuesList =
    planets.values.toList(growable: false); // [Mercury, Venus, Mars]

实现

List<E> toList({bool growable = true}) {
  if (this.isEmpty) return List<E>.empty(growable: growable);
  var first = this[0];
  var result = List<E>.filled(this.length, first, growable: growable);
  for (int i = 1; i < this.length; i++) {
    result[i] = this[i];
  }
  return result;
}