РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
317 of 723 menu

Метод map

Метод map класса Map преобразует каждый элемент словаря с помощью переданной функции и возвращает новый словарь с преобразованными значениями. Исходный словарь при этом не изменяется. В первый параметр мы передаем функцию, которая принимает ключ и значение текущего элемента и возвращает объект класса MapEntry с новым ключом и новым значением. Метод возвращает новый словарь типа Map, содержащий все преобразованные элементы исходного словаря.

Синтаксис

map.map((K key, V value) => MapEntry(newKey, newValue))

Пример

Давайте умножим каждое значение словаря на 2 и получим новый словарь:

void main() { Map<String, int> map = {'a': 1, 'b': 2, 'c': 3}; Map<String, int> res = map.map((key, value) => MapEntry(key, value * 2)); print(res); }

Результат выполнения кода:

{a: 2, b: 4, c: 6}

Пример

Давайте преобразуем ключи словаря, добавив к каждому из них символ подчеркивания:

void main() { Map<String, int> map = {'a': 1, 'b': 2, 'c': 3}; Map<String, int> res = map.map((key, value) => MapEntry(key + '_', value)); print(res); }

Результат выполнения кода:

{a_: 1, b_: 2, c_: 3}

Пример

Давайте преобразуем и ключи, и значения словаря, сформировав новый словарь с другим типом данных:

void main() { Map<String, int> map = {'a': 1, 'b': 2, 'c': 3}; Map<String, String> res = map.map((key, value) => MapEntry(key.toUpperCase(), 'value_' + value.toString())); print(res); }

Результат выполнения кода:

{A: value_1, B: value_2, C: value_3}

Смотрите также

  • метод forEach,
    который перебирает элементы словаря
  • метод updateAll,
    который обновляет все значения словаря
  • свойство entries,
    которое возвращает коллекцию пар ключ-значение
  • класс MapEntry,
    который представляет пару ключ-значение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить