Dictionary<TKey,TValue>.Add(TKey, TValue) Dictionary<TKey,TValue>.Add(TKey, TValue) Dictionary<TKey,TValue>.Add(TKey, TValue) Dictionary<TKey,TValue>.Add(TKey, TValue) Method

Definizione

Aggiunge la chiave e il valore specificati al dizionario.Adds the specified key and value to the dictionary.

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)

Parametri

key
TKey TKey TKey TKey

Chiave dell'elemento da aggiungere.The key of the element to add.

value
TValue TValue TValue TValue

Valore dell'elemento da aggiungere.The value of the element to add. Il valore può essere null per i tipi di riferimento.The value can be null for reference types.

Implementazioni

Eccezioni

In Dictionary<TKey,TValue> è già presente un elemento con la stessa chiave.An element with the same key already exists in the Dictionary<TKey,TValue>.

Esempi

Nota

Gli esempi in C# in questo articolo vengono eseguiti nello strumento di esecuzione e playground per codice inline Try.NET.The C# examples in this article run in the Try.NET inline code runner and playground. Selezionare il pulsante Esegui per eseguire un esempio in una finestra interattiva.Select the Run button to run an example in an interactive window. Dopo aver eseguito il codice, è possibile modificarlo ed eseguire il codice modificato selezionando di nuovo Esegui.Once you execute the code, you can modify it and run the modified code by selecting Run again. Il codice modificato viene eseguito nella finestra interattiva o, se la compilazione non riesce, la finestra interattiva visualizza tutti i messaggi di errore del compilatore C#.The modified code either runs in the interactive window or, if compilation fails, the interactive window displays all C# compiler error messages.

Nell'esempio di codice seguente viene creato Dictionary<TKey,TValue> un oggetto vuoto di stringhe con chiavi di Add stringa e viene utilizzato il metodo per aggiungere alcuni elementi.The following code example creates an empty Dictionary<TKey,TValue> of strings with string keys and uses the Add method to add some elements. Nell'esempio viene illustrato che Add il metodo genera ArgumentException un'eccezione quando si tenta di aggiungere una chiave duplicata.The example demonstrates that the Add method throws an ArgumentException when attempting to add a duplicate key.

Questo esempio di codice fa parte di un esempio più ampio fornito Dictionary<TKey,TValue> per la classe.This code example is part of a larger example provided for the Dictionary<TKey,TValue> class.

// 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

Commenti

È anche possibile usare la Item[TKey] proprietà per aggiungere nuovi elementi impostando il valore di una chiave che non esiste Dictionary<TKey,TValue>in, ad esempio myCollection[myKey] = myValue (in Visual Basic, myCollection(myKey) = myValue).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<TKey,TValue>; for example, myCollection[myKey] = myValue (in Visual Basic, myCollection(myKey) = myValue). Tuttavia, se la chiave specificata esiste già nell'oggetto Dictionary<TKey,TValue>, l'impostazione Item[TKey] della proprietà sovrascrive il valore precedente.However, if the specified key already exists in the Dictionary<TKey,TValue>, setting the Item[TKey] property overwrites the old value. Al contrario, il Add metodo genera un'eccezione se esiste già un valore con la chiave specificata.In contrast, the Add method throws an exception if a value with the specified key already exists.

Se il Count valore della proprietà Dictionary<TKey,TValue> è già uguale alla capacità, la capacità del viene aumentata riallocando automaticamente la matrice interna e gli elementi esistenti vengono copiati nella nuova matrice prima che il nuovo elemento venga aggiunto.If the Count property value already equals the capacity, the capacity of the Dictionary<TKey,TValue> is increased by automatically reallocating the internal array, and the existing elements are copied to the new array before the new element is added.

Una chiave non può nullessere, ma un valore può essere, TValue se è un tipo di riferimento.A key cannot be null, but a value can be, if TValue is a reference type.

Se Count è minore della capacità, questo metodo si avvicina a un'operazione O (1).If Count is less than the capacity, this method approaches an O(1) operation. Se la capacità deve essere aumentata per adattarsi al nuovo elemento, questo metodo diventa un'operazione On(), dove n è Count.If the capacity must be increased to accommodate the new element, this method becomes an O(n) operation, where n is Count.

Si applica a

Vedi anche