Spec-Zone.ru › Dart 2

dart:html

метод replaceRange

void replaceRange(
  1. int start,
  2. int end,
  3. Iterable<E> iterable
)
переопределение

Заменяет диапазон элементов элементами из replacements.

Удаляет объекты в диапазоне от start до end, а затем вставляет элементы из replacements в позицию start.

final numbers = <int>[1, 2, 3, 4, 5];
final replacements = [6, 7];
numbers.replaceRange(1, 4, replacements);
print(numbers); // [1, 6, 7, 5]

Указанный диапазон, заданный start и end, должен быть допустимым. Диапазон от start до end допустим, если 0 ≤ start ≤ end ≤ length. Пустой диапазон (с end == start) допустим.

Операция list.replaceRange(start, end, replacements) примерно эквивалентна:

final numbers = <int>[1, 2, 3, 4, 5];
numbers.removeRange(1, 4);
final replacements = [6, 7];
numbers.insertAll(1, replacements);
print(numbers); // [1, 6, 7, 5]

но может быть эффективнее.

Список должен допускать изменение размера. Этот метод не работает со списками фиксированной длины, даже если replacements содержит столько же элементов, сколько заменяемый диапазон. В этом случае используйте вместо него setRange.

Реализация

void replaceRange(int start, int end, Iterable<E> iterable) {
  throw new UnsupportedError("Cannot modify an immutable List.");
}

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-html/ImmutableListMixin/replaceRange.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API