sublist方法
override
返回一个新的列表,包含从start
到end
之间的元素。
这个新列表是一个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]
start
和end
的位置必须满足关系 0 ≤ start
≤ end
≤ length。如果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));
}