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

Definição

Adiciona um elemento com a chave fornecida e o valor para o 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)

Parâmetros

key
TKey

O objeto a ser usado como chave do elemento a ser adicionado.The object to use as the key of the element to add.

value
TValue

O objeto a ser usado como o valor do elemento a ser adicionado.The object to use as the value of the element to add.

Exceções

key é null.key is null.

Já existe um elemento com a mesma chave no IDictionary<TKey,TValue>.An element with the same key already exists in the IDictionary<TKey,TValue>.

Exemplos

O exemplo de código a seguir cria Dictionary<TKey,TValue> um vazio de cadeias de caracteres, com chaves de inteiro e IDictionary<TKey,TValue> o acessa por meio da interface.The following code example creates an empty Dictionary<TKey,TValue> of strings, with integer keys, and accesses it through the IDictionary<TKey,TValue> interface. O exemplo de código usa Add o método para adicionar alguns elementos.The code example uses the Add method to add some elements. O exemplo demonstra que o Add método gera um ArgumentException ao tentar adicionar uma chave duplicada.The example demonstrates that the Add method throws an ArgumentException when attempting to add a duplicate key.

Esse código é parte de um exemplo maior que pode ser compilado e executado.This code is part of a larger example that can be compiled and executed. Consulte 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

Comentários

Você também pode usar a Item[TKey] propriedade para adicionar novos elementos definindo o valor de uma chave que não existe no dicionário; por exemplo, myCollection["myNonexistentKey"] = myValue em C# (myCollection("myNonexistentKey") = myValue em 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). No entanto, se a chave especificada já existir no dicionário, definir Item[TKey] a propriedade substituirá o valor antigo.However, if the specified key already exists in the dictionary, setting the Item[TKey] property overwrites the old value. Por outro lado, Add o método não modifica os elementos existentes.In contrast, the Add method does not modify existing elements.

As implementações podem variar na forma como determinam a igualdade dos objetos; por exemplo, a List<T> classe usa Comparer<T>.Default, enquanto a Dictionary<TKey,TValue> classe permite que o usuário especifique a IComparer<T> implementação a ser usada para comparar as chaves.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.

As implementações podem variar se permitirem key. nullImplementations can vary in whether they allow key to be null.

Aplica-se a

Veja também