Прочитать на английском

Поделиться через


IDictionary<TKey,TValue>.Add(TKey, TValue) Метод

Определение

Добавляет элемент с указанными ключом и значением в объект IDictionary<TKey,TValue>.

public void Add (TKey key, TValue value);

Параметры

key
TKey

Объект, используемый в качестве ключа добавляемого элемента.

value
TValue

Объект, используемый в качестве значения добавляемого элемента.

Исключения

key имеет значение null.

Элемент с таким ключом уже существует в IDictionary<TKey,TValue>.

Объект IDictionary<TKey,TValue> доступен только для чтения.

Примеры

В следующем примере кода создается пустая Dictionary<TKey,TValue> строка с целочисленными ключами и осуществляется доступ к ней IDictionary<TKey,TValue> через интерфейс . В примере кода используется Add метод для добавления некоторых элементов. В примере показано, что Add метод создает исключение ArgumentException при попытке добавить повторяющийся ключ.

Этот код является частью более крупного примера, который можно скомпилировать и выполнить. См. раздел System.Collections.Generic.IDictionary<TKey,TValue>.

// Create a new dictionary of strings, with string keys,
// and access it through the IDictionary generic interface.
IDictionary<string, string> openWith =
    new Dictionary<string, string>();

// Add some elements to the dictionary. There are no
// duplicate keys, but some of the values are duplicates.
openWith.Add("txt", "notepad.exe");
openWith.Add("bmp", "paint.exe");
openWith.Add("dib", "paint.exe");
openWith.Add("rtf", "wordpad.exe");

// The Add method throws an exception if the new key is
// already in the dictionary.
try
{
    openWith.Add("txt", "winword.exe");
}
catch (ArgumentException)
{
    Console.WriteLine("An element with Key = \"txt\" already exists.");
}

Комментарии

Вы также можете использовать Item[] свойство для добавления новых элементов, задав значение ключа, не существующего в словаре, например, myCollection["myNonexistentKey"] = myValue в C# (myCollection("myNonexistentKey") = myValue в Visual Basic). Однако если указанный ключ уже существует в словаре, установка Item[] свойства перезаписывает старое значение. В отличие от этого, Add метод не изменяет существующие элементы.

Реализации могут различаться в зависимости от того, как они определяют равенство объектов; Например, List<T> класс использует Comparer<T>.Default, тогда как Dictionary<TKey,TValue> класс позволяет пользователю указать реализацию, используемую IComparer<T> для сравнения ключей.

Реализации могут различаться в зависимости от того, позволяют key ли они иметь значение null.

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

См. также раздел