Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

Dictionary<TKey, TValue>.ICollection<KeyValuePair<TKey, TValue>>.Add, méthode

Ajoute la valeur spécifiée à ICollection<T> avec la clé spécifiée.

Espace de noms :  System.Collections.Generic
Assemblys :   System.Collections (dans System.Collections.dll)
  mscorlib (dans mscorlib.dll)

void ICollection<KeyValuePair<TKey, TValue>>.Add(
	KeyValuePair<TKey, TValue> keyValuePair
)

Paramètres

keyValuePair
Type : System.Collections.Generic.KeyValuePair<TKey, TValue>
Structure KeyValuePair<TKey, TValue> qui représente la clé et la valeur à ajouter à Dictionary<TKey, TValue>.

Implémentations

ICollection<T>.Add(T)

ExceptionCondition
ArgumentNullException

La clé de keyValuePair est null.

ArgumentException

Un élément possédant la même clé existe déjà dans Dictionary<TKey, TValue>.

Si Count est inférieure à la capacité, cette méthode est proche d'une opération o (1). Si la capacité doit être augmentée pour intégrer le nouvel élément, cette méthode devient un O (n) opération, où n est Count.

L'exemple suivant montre comment utiliser le ICollection<KeyValuePair<TKey, TValue>>.Add, ICollection<KeyValuePair<TKey, TValue>>.Contains, ICollection<KeyValuePair<TKey, TValue>>.CopyTo, et ICollection<KeyValuePair<TKey, TValue>>.Remove méthodes de la System.Collections.Generic.ICollection<T> interface générique pour manipuler un Dictionary<TKey, TValue> objet.


using System;
using System.Collections.Generic;

public class Example
{
    public static void Main()
    {
        // Create a new dictionary of strings, with string keys, and
        // access it through the generic ICollection interface. The
        // generic ICollection interface views the dictionary as a
        // collection of KeyValuePair objects with the same type
        // arguments as the dictionary.
        //
        ICollection<KeyValuePair<String, String>> openWith =
            new Dictionary<String, String>();

        // Add some elements to the dictionary. When elements are 
        // added through the ICollection<T> interface, the keys
        // and values must be wrapped in KeyValuePair objects.
        //
        openWith.Add(new KeyValuePair<String,String>("txt", "notepad.exe"));
        openWith.Add(new KeyValuePair<String,String>("bmp", "paint.exe"));
        openWith.Add(new KeyValuePair<String,String>("dib", "paint.exe"));
        openWith.Add(new KeyValuePair<String,String>("rtf", "wordpad.exe"));

        Console.WriteLine();
        foreach( KeyValuePair<string, string> element in openWith )
        {
            Console.WriteLine("{0}, {1}", element.Key, element.Value);
        }

        // The Contains method also takes a KeyValuePair object.
        //
        Console.WriteLine(
            "\nContains(KeyValuePair(\"txt\", \"notepad.exe\")): {0}", 
            openWith.Contains(new KeyValuePair<String,String>("txt", "notepad.exe")));

        // The Remove method takes a KeyValuePair object.)
        //
        // Use the Remove method to remove a key/value pair.
        Console.WriteLine("\nRemove(new KeyValuePair(\"dib\", \"paint.exe\"))");
        openWith.Remove(new KeyValuePair<String,String>("dib", "paint.exe"));

        Console.WriteLine();
        foreach( KeyValuePair<string, string> element in openWith )
        {
            Console.WriteLine("{0}, {1}", element.Key, element.Value);
        }

        // Create an array of KeyValuePair objects and copy the 
        // contents of the dictionary to it. 
        // 
        KeyValuePair<string, string>[] copy = 
            new KeyValuePair<string, string>[openWith.Count];
        openWith.CopyTo(copy, 0);

        // List the contents of the array.
        //
        Console.WriteLine();
        foreach( KeyValuePair<string, string> element in copy )
        {
            Console.WriteLine("{0}, {1}", element.Key, element.Value);
        }
    }
}

/* This code example produces the following output:

txt, notepad.exe
bmp, paint.exe
dib, paint.exe
rtf, wordpad.exe

Contains(KeyValuePair("txt", "notepad.exe")): True

Remove(new KeyValuePair("dib", "paint.exe"))

txt, notepad.exe
bmp, paint.exe
rtf, wordpad.exe

txt, notepad.exe
bmp, paint.exe
rtf, wordpad.exe
 */


.NET Framework

Pris en charge dans : 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

.NET pour les applications Windows Phone

Pris en charge dans : Windows Phone 8.1, Windows Phone Silverlight 8

Bibliothèque de classes portable

Pris en charge dans : Bibliothèque de classes portable

.NET pour les applications du Windows Store

Pris en charge dans :

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

.NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

Afficher: