IDictionary<TKey,TValue>.Add(TKey, TValue) Méthode

Définition

Ajoute un élément avec la clé et la valeur fournies à IDictionary<TKey,TValue>.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)

Paramètres

key
TKey

Objet à utiliser comme clé de l'élément à ajouter.The object to use as the key of the element to add.

value
TValue

Objet à utiliser comme valeur de l'élément à ajouter.The object to use as the value of the element to add.

Exceptions

key a la valeur null.key is null.

Un élément possédant la même clé existe déjà dans IDictionary<TKey,TValue>.An element with the same key already exists in the IDictionary<TKey,TValue>.

Exemples

L’exemple de code suivant crée une Dictionary<TKey,TValue> vide de chaînes, avec des clés entières, et y accède par le biais de l’interface IDictionary<TKey,TValue>.The following code example creates an empty Dictionary<TKey,TValue> of strings, with integer keys, and accesses it through the IDictionary<TKey,TValue> interface. L’exemple de code utilise la méthode Add pour ajouter des éléments.The code example uses the Add method to add some elements. L’exemple montre que la méthode Add lève une ArgumentException lors de la tentative d’ajout d’une clé dupliquée.The example demonstrates that the Add method throws an ArgumentException when attempting to add a duplicate key.

Ce code fait partie d’un exemple plus complet qui peut être compilé et exécuté.This code is part of a larger example that can be compiled and executed. Consultez 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

Remarques

Vous pouvez également utiliser la propriété Item[TKey] pour ajouter de nouveaux éléments en définissant la valeur d’une clé qui n’existe pas dans le dictionnaire ; par exemple, myCollection["myNonexistentKey"] = myValue dans C# (myCollection("myNonexistentKey") = myValue dans 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). Toutefois, si la clé spécifiée existe déjà dans le dictionnaire, la définition de la propriété Item[TKey] remplace l’ancienne valeur.However, if the specified key already exists in the dictionary, setting the Item[TKey] property overwrites the old value. En revanche, la méthode Add ne modifie pas les éléments existants.In contrast, the Add method does not modify existing elements.

Les implémentations peuvent varier dans la manière dont elles déterminent l’égalité des objets ; par exemple, la classe List<T> utilise Comparer<T>.Default, tandis que la classe Dictionary<TKey,TValue> permet à l’utilisateur de spécifier l’implémentation IComparer<T> à utiliser pour comparer des clés.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.

Les implémentations peuvent varier dans le fait qu’elles autorisent l' nullde key.Implementations can vary in whether they allow key to be null.

S’applique à

Voir aussi