Библиотеки » Основная библиотека (dart:core) » Iterable » expand
функция Iterable::expand
Синтаксис
Передаваемые параметры
Iterable f(E element)Возвращаемое значение
IterableОписание
Метод expand позволяет получить новую коллекцию (составной объект), в которой значения элементов будут состоять из результатов выполнения пользовательской callback-функции Iterable f(E element) для каждого элемента исходной коллекции.
В отличии от метода Iterable.map данный метод может изменять количество элементов в новой коллекции, так как преобразовывает каждый исходный элемент в 0 или несколько новых.
Данный метод использует "ленивую" инициализацию новой коллекции. До тех пор, пока к элементам нового объекта не будет ни одного обращения, пользовательская функция f(E element) вызываться не будет и новые значения получены не будут. Кроме этого, значения элементов не будут кешироваться, и таким образом повторная итерация по новой коллекции будет приводить к повторному вызову пользовательской callback-функции.
- функция
Iterable f(E element)может возвращать результаты произвольного типа, а следовательно, тип возвращаемого объекта будетIterable, а неIterable[E].