Класс Dictionary <‘TKey,’ TValue> является изменяемым аналогом структуры данных карты F # и содержит много одинаковых функций.
Повторяем из главы «Карта» в F #, карта — это особый вид набора, который связывает значения с ключом.
Создание изменчивого словаря
Изменяемые словари создаются с использованием нового ключевого слова и вызова конструктора списка. Следующий пример демонстрирует это —
open System.Collections.Generic let dict = new Dictionary<string, string>() dict.Add("1501", "Zara Ali") dict.Add("1502","Rishita Gupta") dict.Add("1503","Robin Sahoo") dict.Add("1504","Gillian Megan") printfn "Dictionary - students: %A" dict
Когда вы компилируете и запускаете программу, она выдает следующий вывод:
Dictionary - students: seq [[1501, Zara Ali]; [1502, Rishita Gupta]; [1503, Robin Sahoo]; [1504, Gillian Megan]]
Словарь (TKey, TValue) Класс
Класс Dictionary (TKey, TValue) представляет собой набор ключей и значений.
В следующих таблицах представлены свойства, конструкторы и методы класса List (T).
свойства
Имущество | Описание |
---|---|
Comparer | Получает IEqualityComparer (T), который используется для определения равенства ключей для словаря. |
подсчитывать | Получает количество пар ключ / значение, содержащихся в словаре (TKey, TValue). |
Вещь | Получает или задает значение, связанное с указанным ключом. |
Ключи | Получает коллекцию, содержащую ключи в словаре (TKey, TValue). |
Ценности | Получает коллекцию, содержащую значения в словаре (TKey, TValue). |
Конструкторы
Конструкторы | Описание |
---|---|
Словарь (TKey, TValue) () | Инициализирует новый экземпляр класса Dictionary (TKey, TValue), который является пустым, имеет начальную емкость по умолчанию и использует компаратор равенства по умолчанию для типа ключа. |
Словарь (TKey, TValue) (IDictionary (TKey, TValue)) | Инициализирует новый экземпляр класса Dictionary (TKey, TValue), который содержит элементы, скопированные из указанного IDictionary (TKey, TValue), и использует компаратор равенства по умолчанию для типа ключа. |
Словарь (TKey, TValue) (IEqualityComparer (TKey)) | Инициализирует новый экземпляр класса Dictionary (TKey, TValue), который является пустым, имеет начальную емкость по умолчанию и использует указанный IEqualityComparer (T). |
Словарь (TKey, TValue) (Int32) | Инициализирует новый экземпляр класса Dictionary (TKey, TValue), который пуст, имеет указанную начальную емкость и использует компаратор равенства по умолчанию для типа ключа. |
Словарь (TKey, TValue) (IDictionary (TKey, TValue), IEqualityComparer (TKey)) | Инициализирует новый экземпляр класса Dictionary (TKey, TValue), который содержит элементы, скопированные из указанного IDictionary (TKey, TValue), и использует указанный IEqualityComparer (T). |
Словарь (TKey, TValue) (Int32, IEqualityComparer (TKey)) | Инициализирует новый экземпляр класса Dictionary (TKey, TValue), который является пустым, имеет указанную начальную емкость и использует указанный IEqualityComparer (T). |
Словарь (TKey, TValue) (SerializationInfo, StreamingContext) | Инициализирует новый экземпляр класса ictionary (TKey, TValue) с сериализованными данными. |
методы
метод | Описание |
---|---|
добавлять | Добавляет указанный ключ и значение в словарь. |
Очистить | Удаляет все ключи и значения из словаря (TKey, TValue). |
ContainsKey | Определяет, содержит ли словарь (TKey, TValue) указанный ключ. |
ContainsValue | Определяет, содержит ли словарь (TKey, TValue) определенное значение. |
Равно (Объект) | Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object.) |
завершать | Позволяет объекту попытаться освободить ресурсы и выполнить другие операции очистки, прежде чем он будет утилизирован сборщиком мусора. (Унаследовано от Object.) |
GetEnumerator | Возвращает перечислитель, который перебирает словарь (TKey, TValue). |
GetHashCode | Служит в качестве хэш-функции по умолчанию. (Унаследовано от Object.) |
GetObjectData | Реализует интерфейс System.Runtime.Serialization.ISerializable и возвращает данные, необходимые для сериализации экземпляра Dictionary (TKey, TValue). |
GetType | Получает тип текущего экземпляра. (Унаследовано от Object.) |
MemberwiseClone | Создает поверхностную копию текущего объекта. (Унаследовано от Object.) |
OnDeserialization | Реализует интерфейс System.Runtime.Serialization.ISerializable и вызывает событие десериализации, когда десериализация завершена. |
Удалить | Удаляет значение с указанным ключом из словаря (TKey, TValue). |
Нанизывать | Возвращает строку, которая представляет текущий объект. (Унаследовано от Object.) |
TryGetValue | Получает значение, связанное с указанным ключом. |
пример
open System.Collections.Generic let dict = new Dictionary<string, string>() dict.Add("1501", "Zara Ali") dict.Add("1502","Rishita Gupta") dict.Add("1503","Robin Sahoo") dict.Add("1504","Gillian Megan") printfn "Dictionary - students: %A" dict printfn "Total Number of Students: %d" dict.Count printfn "The keys: %A" dict.Keys printf"The Values: %A" dict.Values
Когда вы компилируете и запускаете программу, она выдает следующий вывод: