Compartilhar via


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

Definição

Adiciona um elemento com a chave e o valor especificados ao 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.

value
TValue

O valor do elemento a ser adicionado. O valor pode ser null para tipos de referência.

Implementações

Exceções

key é null.

Já existe um elemento com a mesma chave no SortedList<TKey,TValue>.

Exemplos

O exemplo de código a seguir cria um vazio SortedList<TKey,TValue> de cadeias de caracteres com chaves de cadeia de caracteres e 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.

Este exemplo de código faz parte de um exemplo maior fornecido para a SortedList<TKey,TValue> classe .

// 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
// Create a new sorted list of strings, with string
// keys.
let openWith = 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");
with
    | :? ArgumentException ->
        printfn "An element with Key = \"txt\" already exists."

Comentários

Uma chave não pode ser null, mas um valor pode ser, se o tipo de valores na lista classificada, , TValuefor um tipo de referência.

Você também pode usar a Item[] propriedade para adicionar novos elementos definindo o valor de uma chave que não existe no SortedList<TKey,TValue>; por exemplo, myCollection["myNonexistentKey"] = myValue. No entanto, se a chave especificada já existir no , definir SortedList<TKey,TValue>a Item[] propriedade substituirá o valor antigo. Por outro lado, o Add método não modifica os elementos existentes.

Se Count já for igual Capacitya , a capacidade do SortedList<TKey,TValue> 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.

Esse método é uma operação O(n) para dados não classificados, em que n é Count. É uma operação O(log n) se o novo elemento for adicionado no final da lista. Se a inserção causar um redimensionamento, a operação será O(n).

Aplica-se a

Confira também