В Dart Map— это мощная структура данных, позволяющая хранить пары ключ-значение. Он похож на словарь или ассоциативный массив в других языках программирования. В этой статье будет представлен подробный обзор структуры данных Mapв Dart и рассмотрены ее различные методы с примерами кода.
Понимание структуры данных карты:
A Map — это неупорядоченная коллекция пар ключ-значение, где каждый ключ уникален. Он обеспечивает быстрый поиск и получение значений на основе их ключей. В Dart Mapможно создать с помощью фигурных скобок {}или с помощью конструктора Map. Давайте взглянем на некоторые часто используемые методы, доступные в классе Map.
lengthсвойство:
Свойство lengthвозвращает количество пар ключ-значение, присутствующих в Map. Вот пример:
Map<String, int> ages = {'John': 25, 'Alice': 30, 'Bob': 35};
print(ages.length); // Output: 3
keysсвойство:
Свойство keysвозвращает итерацию, содержащую все ключи, присутствующие в Map. Вот пример:
Map<String, int> ages = {'John': 25, 'Alice': 30, 'Bob': 35};
print(ages.keys.toList()); // Output: [John, Alice, Bob]
valuesсвойство:
Свойство valuesвозвращает итерацию, содержащую все значения, присутствующие в Map. Вот пример:
Map<String, int> ages = {'John': 25, 'Alice': 30, 'Bob': 35};
print(ages.values.toList()); // Output: [25, 30, 35]
isEmptyсвойство:
Свойство isEmptyвозвращает true, если Mapпусто, в противном случае false. Вот пример:
Map<String, int> ages = {};
print(ages.isEmpty); // Output: true
containsKey()метод:
Метод containsKey()проверяет, присутствует ли данный ключ в Map. Он возвращает true, если ключ существует, в противном случае false. Вот пример:
Map<String, int> ages = {'John': 25, 'Alice': 30, 'Bob': 35};
print(ages.containsKey('Alice')); // Output: true
containsValue()метод:
Метод containsValue()проверяет, присутствует ли заданное значение в Map. Он возвращает true, если значение существует, в противном случае false. Вот пример:
Map<String, int> ages = {'John': 25, 'Alice': 30, 'Bob': 35};
print(ages.containsValue(30)); // Output: true
addAll()метод:
Метод addAll()добавляет все пары ключ-значение из одного Mapв другой. Вот пример:
Map<String, int> ages = {'John': 25, 'Alice': 30};
Map<String, int> additionalAges = {'Bob': 35, 'Charlie': 40};
ages.addAll(additionalAges);
print(ages); // Output: {John: 25, Alice: 30, Bob: 35, Charlie: 40}
remove()метод:
Метод remove()удаляет пару ключ-значение из Mapна основе предоставленного ключа. Вот пример:
Map<String, int> ages = {'John': 25, 'Alice': 30, 'Bob': 35};
ages.remove('Alice');
print(ages); // Output: {John: 25, Bob: 35}
Структура данных Mapв Dart обеспечивает гибкий и эффективный способ хранения и извлечения пар ключ-значение. В этой статье мы рассмотрели некоторые основные методы, доступные в классе Map. Используя эти методы, вы можете манипулировать и извлекать информацию из объектов Mapв своих программах Dart. Не забудьте обратиться к официальной документации Dart для получения более подробной информации и дополнительных методов, доступных для работы с Map.