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++;
}
}