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

Definição

Adiciona um elemento com a chave e o valor especificados ao SortedList<TKey,TValue>.Adds an element with the specified key and value into the SortedList<TKey,TValue>.

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)

Parâmetros

key
TKey

A chave do elemento a ser adicionada.The key of the element to add.

value
TValue

O valor do elemento a ser adicionado.The value of the element to add. O valor pode ser null para tipos de referência.The value can be null for reference types.

Implementações

Exceções

key é null.key is null.

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

Exemplos

O exemplo de código a seguir cria SortedList<TKey,TValue> uma cadeia de caracteres vazia com chaves de Add cadeia de caracteres e usa o método para adicionar alguns elementos.The following code example creates an empty SortedList<TKey,TValue> of strings with string keys and 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.

Este exemplo de código faz parte de um exemplo maior fornecido para SortedList<TKey,TValue> a classe.This code example is part of a larger example provided for the SortedList<TKey,TValue> class.

// Create a new sorted list of strings, with string
// keys.
SortedList<String^, String^>^ openWith =
    gcnew SortedList<String^, String^>();

// Add some elements to the list. 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 list.
try
{
    openWith->Add("txt", "winword.exe");
}
catch (ArgumentException^)
{
    Console::WriteLine("An element with Key = \"txt\" already exists.");
}
// Create a new sorted list of strings, with string
// keys.
SortedList<string, string> openWith = 
    new SortedList<string, string>();

// Add some elements to the list. 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 list.
try
{
    openWith.Add("txt", "winword.exe");
}
catch (ArgumentException)
{
    Console.WriteLine("An element with Key = \"txt\" already exists.");
}
' Create a new sorted list of strings, with string 
' keys. 
Dim openWith As New SortedList(Of String, String)

' Add some elements to the list. 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 list.
Try
    openWith.Add("txt", "winword.exe")
Catch 
    Console.WriteLine("An element with Key = ""txt"" already exists.")
End Try

Comentários

Uma chave não pode nullser, mas um valor pode ser, se o tipo de valores na lista classificada TValue,, for um tipo de referência.A key cannot be null, but a value can be, if the type of values in the sorted list, TValue, is a reference type.

Você também pode usar a Item[TKey] propriedade para adicionar novos elementos definindo o valor de uma chave que não existe SortedList<TKey,TValue>no; por exemplo, myCollection["myNonexistentKey"] = 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 SortedList<TKey,TValue>; for example, myCollection["myNonexistentKey"] = myValue. No entanto, se a chave especificada já existir SortedList<TKey,TValue>no, definir Item[TKey] a propriedade substituirá o valor antigo.However, if the specified key already exists in the SortedList<TKey,TValue>, 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.

Se Count já for Capacityigual a SortedList<TKey,TValue> , a capacidade do será aumentada realocando automaticamente a matriz interna e os elementos existentes serão copiados para a nova matriz antes que o novo elemento seja adicionado.If Count already equals Capacity, the capacity of the SortedList<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.

Esse método é uma operação On() para dados não classificados, onde n é Count.This method is an O(n) operation for unsorted data, where n is Count. É uma operação o (log n) se o novo elemento for adicionado ao final da lista.It is an O(log n) operation if the new element is added at the end of the list. Se a inserção causar um redimensionamento, a operaçãonserá o ().If insertion causes a resize, the operation is O(n).

Aplica-se a

Veja também