Как использовать конструктор dart Map.fromEntries ()? - PullRequest
0 голосов
/ 15 января 2019

Я пытаюсь выучить язык программирования Dart.

Я не понял конструктор фабрики Map.fromEntries(). Ищем пример использования.

ссылка: Map.fromEntries ()

1 Ответ

0 голосов
/ 15 января 2019

Конструктор Map.fromEntries предназначен для создания карты путем генерации последовательности пар.

Вы можете использовать его для создания карты из другой карты как Map.fromEntries(otherMap.entries), но это расточительно. Вы можете просто сделать Map.from(otherMap).

Более интересно, если вы вычисляете записи из чего-то другого (которое может быть, а может и не быть самим собой). Пример:

Iterable<int> someInts = [2, 7, .... ];
var squareMap = Map.fromEntries(someInts.map((n) => MapEntry(n, n * n)));
print(squareMap[7]);  // prints 49.

Или вы можете отфильтровать записи:

var filteredMap = Map.fromEntries(otherMap.entries.where((e) => e.key.isOdd));

Часто вы можете получить тот же эффект, используя Map.fromIterable или Map.fromIterables, все зависит от того, какие примитивы у вас есть. Фильтрация записей существующей карты особенно проста с использованием Map.fromEntries, тогда как создание новой карты с нуля, вероятно, одинаково легко с использованием Map.fromIterable или Map.fromIterables.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...