Свойство entries
Свойство entries возвращает объект типа
Iterable<MapEntry>, содержащий все пары
ключ-значение из Map. Каждый элемент этой
коллекции представляет собой объект MapEntry,
у которого можно получить ключ через свойство
key и значение через свойство value.
Порядок элементов соответствует порядку их
добавления в Map. Свойство доступно только
для чтения и не принимает параметров.
Синтаксис
map.entries
Пример
Давайте получим все пары ключ-значение из Map и выведем их на экран:
void main()
{
Map<String, int> map = {'a': 1, 'b': 2, 'c': 3};
Iterable<MapEntry<String, int>> res = map.entries;
print(res);
}
Результат выполнения кода:
(MapEntry(a: 1), MapEntry(b: 2), MapEntry(c: 3))
Пример
Давайте переберем все пары ключ-значение и выведем ключи и значения отдельно:
void main()
{
Map<String, int> map = {'a': 1, 'b': 2, 'c': 3};
for (MapEntry<String, int> entry in map.entries) {
print('key: ${entry.key}, value: ${entry.value}');
}
}
Результат выполнения кода:
"key: a, value: 1"
"key: b, value: 2"
"key: c, value: 3"
Пример
Давайте преобразуем коллекцию пар в список
с помощью метода toList:
void main()
{
Map<String, int> map = {'a': 1, 'b': 2, 'c': 3};
List<MapEntry<String, int>> res = map.entries.toList();
print(res);
print(res[0].key);
print(res[0].value);
}
Результат выполнения кода:
[MapEntry(a: 1), MapEntry(b: 2), MapEntry(c: 3)]
"a"
1