method
setRange

void setRange(
int start,
int end,
Iterable<E> iterable,
[int skipCount = 0]
)

Copies the objects of [iterable], skipping [skipCount] objects first, into the range [start], inclusive, to [end], exclusive, of the list.

List<int> list1 = [1, 2, 3, 4]; List<int> list2 = [5, 6, 7, 8, 9]; // Copies the 4th and 5th items in list2 as the 2nd and 3rd items // of list1. list1.setRange(1, 3, list2, 3); list1.join(', '); // '1, 8, 9, 4'

The [start] and [end] indices must satisfy 0 ≤ start ≤ end ≤ length. If [start] equals [end], this method has no effect.

The [iterable] must have enough objects to fill the range from start to end after skipping [skipCount] objects.

If iterable is this list, the operation will copy the elements originally in the range from skipCount to skipCount + (end - start) to the range start to end, even if the two ranges overlap.

If iterable depends on this list in some other way, no guarantees are made.