Dictionary<TKey,TValue>.Add(TKey, TValue) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt dem Wörterbuch den angegebenen Schlüssel und Wert hinzu.
public:
virtual void Add(TKey key, TValue value);
public void Add (TKey key, TValue value);
abstract member Add : 'Key * 'Value -> unit
override this.Add : 'Key * 'Value -> unit
Public Sub Add (key As TKey, value As TValue)
Parameter
- key
- TKey
Der Schlüssel des hinzuzufügenden Elements.
- value
- TValue
Der Wert des hinzuzufügenden Elements. Der Wert kann für Verweistypen null
sein.
Implementiert
Ausnahmen
key
ist null
.
In Dictionary<TKey,TValue> ist bereits ein Element mit demselben Schlüssel enthalten.
Beispiele
Im folgenden Codebeispiel wird eine Leere Dictionary<TKey,TValue> von Zeichenfolgen mit Zeichenfolgenschlüsseln erstellt und die Add -Methode verwendet, um einige Elemente hinzuzufügen. Das Beispiel zeigt, dass die Add -Methode einen ArgumentException auslöst, wenn versucht wird, einen doppelten Schlüssel hinzuzufügen.
Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die Dictionary<TKey,TValue>-Klasse bereitgestellt wird.
// Create a new dictionary of strings, with string keys.
//
Dictionary<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.
//
Dictionary<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.
'
Dim openWith As 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 die Item[] -Eigenschaft auch verwenden, um neue Elemente hinzuzufügen, indem Sie den Wert eines Schlüssels festlegen, myCollection[myKey] = myValue
der Dictionary<TKey,TValue>in nicht vorhanden ist, z. B. (in Visual Basic, myCollection(myKey) = myValue
). Wenn der angegebene Schlüssel jedoch bereits in vorhanden ist, überschreibt die Dictionary<TKey,TValue>Item[] -Eigenschaft den alten Wert. Im Gegensatz dazu löst die Add Methode eine Ausnahme aus, wenn ein Wert mit dem angegebenen Schlüssel bereits vorhanden ist.
Wenn der Count Eigenschaftswert bereits der Kapazität entspricht, wird die Kapazität von Dictionary<TKey,TValue> erhöht, indem das interne Array automatisch neu zugeordnet wird, und die vorhandenen Elemente werden in das neue Array kopiert, bevor das neue Element hinzugefügt wird.
Ein Schlüssel kann nicht sein null
, aber ein Wert kann sein, wenn es sich um TValue
einen Verweistyp handelt.
Wenn Count die Kapazität kleiner ist, nähert sich diese Methode einem O(1)-Vorgang an. Wenn die Kapazität erhöht werden muss, um das neue Element aufzunehmen, wird diese Methode zu einem O(n
)-Vorgang, wobei n
ist Count.