IDictionary<TKey,TValue>.Add(TKey, TValue) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Adiciona um elemento com a chave fornecida e o valor para o 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.
- value
- TValue
O objeto a ser usado como o valor do elemento a ser adicionado.
Exceções
key
é null
.
Já existe um elemento com a mesma chave no IDictionary<TKey,TValue>.
O IDictionary<TKey,TValue> é somente leitura.
Exemplos
O exemplo de código a seguir cria um vazio Dictionary<TKey,TValue> de cadeias de caracteres, com chaves de inteiro, e o acessa por meio da IDictionary<TKey,TValue> interface . O exemplo de código usa o Add método para adicionar alguns elementos. O exemplo demonstra que o Add método lança um ArgumentException ao tentar adicionar uma chave duplicada.
Esse código faz parte de um exemplo maior que pode ser compilado e executado. Consulte 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[] 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
no Visual Basic). No entanto, se a chave especificada já existir no dicionário, definir a Item[] propriedade substituirá o valor antigo. Por outro lado, o Add método não modifica elementos existentes.
As implementações podem variar na forma como determinam a igualdade de 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 chaves.
As implementações podem variar se permitem key
ser null
.