IDictionary<TKey,TValue>.Add(TKey, TValue) Methode

Definition

Fügt der IDictionary<TKey,TValue>-Schnittstelle ein Element mit dem angegebenen Schlüssel und Wert hinzu.Adds an element with the provided key and value to the IDictionary<TKey,TValue>.

public:
 void Add(TKey key, TValue value);
public void Add (TKey key, TValue value);
abstract member Add : 'Key * 'Value -> unit
Public Sub Add (key As TKey, value As TValue)

Parameter

key
TKey

Das Objekt, das als Schlüssel des hinzuzufügenden Elements verwendet werden soll.The object to use as the key of the element to add.

value
TValue

Das Objekt, das als Wert des hinzuzufügenden Elements verwendet werden soll.The object to use as the value of the element to add.

Ausnahmen

key ist null.key is null.

In IDictionary<TKey,TValue> ist bereits ein Element mit demselben Schlüssel enthalten.An element with the same key already exists in the IDictionary<TKey,TValue>.

Beispiele

Im folgenden Codebeispiel wird eine leere Dictionary<TKey,TValue> von Zeichen folgen mit ganzzahligen Schlüsseln erstellt und über die IDictionary<TKey,TValue>-Schnittstelle darauf zugegriffen.The following code example creates an empty Dictionary<TKey,TValue> of strings, with integer keys, and accesses it through the IDictionary<TKey,TValue> interface. Das Codebeispiel verwendet die Add-Methode, um einige Elemente hinzuzufügen.The code example uses the Add method to add some elements. Das Beispiel zeigt, dass die Add-Methode eine ArgumentException auslöst, wenn versucht wird, einen doppelten Schlüssel hinzuzufügen.The example demonstrates that the Add method throws an ArgumentException when attempting to add a duplicate key.

Dieser Code ist Teil eines größeren Beispiels, der kompiliert und ausgeführt werden kann.This code is part of a larger example that can be compiled and executed. Siehe System.Collections.Generic.IDictionary<TKey,TValue>.See 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 =
    gcnew 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.");
}
// 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.");
}
' Create a new dictionary of strings, with string keys, 
' and access it through the IDictionary generic interface.
Dim openWith As IDictionary(Of String, String) = _
    New Dictionary(Of 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 
    Console.WriteLine("An element with Key = ""txt"" already exists.")
End Try

Hinweise

Sie können auch die Item[TKey]-Eigenschaft verwenden, um neue Elemente hinzuzufügen, indem Sie den Wert eines Schlüssels festlegen, der nicht im Wörterbuch vorhanden ist. beispielsweise myCollection["myNonexistentKey"] = myValue in C# (myCollection("myNonexistentKey") = myValue in Visual Basic).You can also use the Item[TKey] property to add new elements by setting the value of a key that does not exist in the dictionary; for example, myCollection["myNonexistentKey"] = myValue in C# (myCollection("myNonexistentKey") = myValue in Visual Basic). Wenn der angegebene Schlüssel jedoch bereits im Wörterbuch vorhanden ist, überschreibt das Festlegen der Item[TKey] Eigenschaft den alten Wert.However, if the specified key already exists in the dictionary, setting the Item[TKey] property overwrites the old value. Im Gegensatz dazu werden durch die Add-Methode vorhandene Elemente nicht geändert.In contrast, the Add method does not modify existing elements.

Implementierungen können variieren, wie Sie die Gleichheit von Objekten bestimmen. beispielsweise verwendet die List<T>-Klasse Comparer<T>.Default, während die Dictionary<TKey,TValue>-Klasse es dem Benutzer ermöglicht, die IComparer<T> Implementierung anzugeben, die zum Vergleichen von Schlüsseln verwendet werden soll.Implementations can vary in how they determine equality of objects; for example, the List<T> class uses Comparer<T>.Default, whereas the Dictionary<TKey,TValue> class allows the user to specify the IComparer<T> implementation to use for comparing keys.

Implementierungen können unterschiedlich sein, unabhängig davon, ob key nullwerden können.Implementations can vary in whether they allow key to be null.

Gilt für:

Siehe auch