writeIterable<T> 静态方法
将可迭代对象的元素写入列表。
这是一个实用函数,可用于实现像 setAll 这样的方法。
将 source
的元素从位置 at
写入 target
。在写入 target
的最后一个位置之后,source
不应包含更多元素。
如果源是一个列表,那么使用 copyRange 函数可能更有效。
实现
static void writeIterable<T>(List<T> target, int at, Iterable<T> source) {
RangeError.checkValueInInterval(at, 0, target.length, "at");
int index = at;
int targetLength = target.length;
for (var element in source) {
if (index == targetLength) {
throw IndexError.withLength(index, targetLength, indexable: target);
}
target[index] = element;
index++;
}
}