Оператор spread ...
Оператор ... (spread) в Dart разворачивает элементы одной коллекции
внутри другой коллекции. Он применяется при создании списков, множеств
и словарей. После оператора указывается коллекция, элементы которой
нужно вставить. Оператор можно использовать в первом параметре
(начальная позиция вставки) и во втором параметре (конечная позиция),
то есть в любом месте литерала коллекции.
Синтаксис
[...collection]
Пример
Давайте развернём элементы одного списка внутри другого:
void main()
{
List<int> a = [1, 2, 3];
List<int> b = [4, 5, 6];
List<int> res = [...a, ...b];
print(res);
}
Результат выполнения кода:
[1, 2, 3, 4, 5, 6]
Пример
Давайте развернём элементы списка внутри множества:
void main()
{
List<int> a = [1, 2, 3];
Set<int> res = {...a, 4, 5};
print(res);
}
Результат выполнения кода:
{1, 2, 3, 4, 5}
Пример
Давайте развернём элементы одной карты внутри другой:
void main()
{
Map<String, int> a = {'a': 1, 'b': 2};
Map<String, int> b = {'c': 3, 'd': 4};
Map<String, int> res = {...a, ...b};
print(res);
}
Результат выполнения кода:
{a: 1, b: 2, c: 3, d: 4}