sublist 方法

List<E> sublist(
  1. int start, [
  2. int? end
])
override

返回一个新的列表,包含从 startend 之间的元素。

新列表是一个 List<E>,包含此列表中在位置大于或等于 start 且小于 end 的元素,顺序与它们在此列表中出现的顺序相同。

final colors = <String>['red', 'green', 'blue', 'orange', 'pink'];
print(colors.sublist(1, 3)); // [green, blue]

如果省略了 end,则默认为此列表的 length

final colors = <String>['red', 'green', 'blue', 'orange', 'pink'];
print(colors.sublist(3)); // [orange, pink]

startend 位置必须满足关系 0 ≤ startendlength。如果 end 等于 start,则返回的列表为空。

实现

List<E> sublist(int start, [int? end]) {
  int listLength = this.length;
  end ??= listLength;

  RangeError.checkValidRange(start, end, listLength);
  return List.from(getRange(start, end));
}