Конструктор of
Конструктор of класса List создает
новый список, заполняя его элементами из другой
коллекции. В первый параметр мы передаем исходную
коллекцию, элементы которой нужно скопировать.
Второй параметр является необязательным и указывает,
следует ли создавать расширяемый список. По умолчанию
список создается расширяемым.
Конструктор of создает поверхностную копию
элементов: сами элементы не копируются, а новый
список лишь ссылается на них. Изменение нового
списка не влияет на исходную коллекцию.
Синтаксис
List.of(elements, [growable])
Пример
Давайте создадим список из другой коллекции:
void main()
{
Iterable<String> src = ['a', 'b', 'c', 'd', 'e'];
List<String> res = List.of(src);
print(res);
}
Результат выполнения кода:
[a, b, c, d, e]
Пример
Давайте создадим нерасширяемый список, передав
вторым параметром false:
void main()
{
List<int> res = List.of([1, 2, 3, 4, 5], false);
print(res);
}
Результат выполнения кода:
[1, 2, 3, 4, 5]
Пример
Давайте убедимся, что изменение нового списка не затрагивает исходную коллекцию:
void main()
{
Iterable<String> src = ['a', 'b', 'c'];
List<String> res = List.of(src);
res.add('d');
print(res);
print(src);
}
Результат выполнения кода:
[a, b, c, d]
[a, b, c]