SortedList.Add(Object, Object) Método

Definição

Adiciona um elemento com a chave e o valor especificados a um objeto SortedList.Adds an element with the specified key and value to a SortedList object.

public:
 virtual void Add(System::Object ^ key, System::Object ^ value);
public virtual void Add (object key, object value);
abstract member Add : obj * obj -> unit
override this.Add : obj * obj -> unit
Public Overridable Sub Add (key As Object, value As Object)

Parâmetros

key
Object

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

value
Object

O valor do elemento a ser adicionado.The value of the element to add. O valor pode ser null.The value can be null.

Implementações

Exceções

key é null.key is null.

Já existe um elemento com o key especificado no objeto SortedList.An element with the specified key already exists in the SortedList object.

- ou --or- O SortedList está definido para usar a interface IComparable e key não implementa a interface IComparable.The SortedList is set to use the IComparable interface, and key does not implement the IComparable interface.

O SortedList é somente leitura.The SortedList is read-only.

- ou --or- O SortedList tem um tamanho fixo.The SortedList has a fixed size.

Não há memória suficiente disponível para adicionar o elemento ao SortedList.There is not enough available memory to add the element to the SortedList.

O comparador gera uma exceção.The comparer throws an exception.

Exemplos

O exemplo de código a seguir mostra como adicionar elementos a um objeto SortedList.The following code example shows how to add elements to a SortedList object.

#using <system.dll>

using namespace System;
using namespace System::Collections;
void PrintKeysAndValues( SortedList^ myList )
{
   Console::WriteLine(  "\t-KEY-\t-VALUE-" );
   for ( int i = 0; i < myList->Count; i++ )
   {
      Console::WriteLine(  "\t{0}:\t{1}", myList->GetKey( i ), myList->GetByIndex( i ) );

   }
   Console::WriteLine();
}

int main()
{
   
   // Creates and initializes a new SortedList.
   SortedList^ mySL = gcnew SortedList;
   mySL->Add( "one", "The" );
   mySL->Add( "two", "quick" );
   mySL->Add( "three", "brown" );
   mySL->Add( "four", "fox" );
   
   // Displays the SortedList.
   Console::WriteLine(  "The SortedList contains the following:" );
   PrintKeysAndValues( mySL );
}

/* 
This code produces the following output.

The SortedList contains the following:
        -KEY-   -VALUE-
        four:   fox
        one:    The
        three:  brown
        two:    quick
*/
using System;
using System.Collections;
public class SamplesSortedList  {

   public static void Main()  {

      // Creates and initializes a new SortedList.
      SortedList mySL = new SortedList();
      mySL.Add( "one", "The" );
      mySL.Add( "two", "quick" );
      mySL.Add( "three", "brown" );
      mySL.Add( "four", "fox" );

      // Displays the SortedList.
      Console.WriteLine( "The SortedList contains the following:" );
      PrintKeysAndValues( mySL );
   }


   public static void PrintKeysAndValues( SortedList myList )  {
      Console.WriteLine( "\t-KEY-\t-VALUE-" );
      for ( int i = 0; i < myList.Count; i++ )  {
         Console.WriteLine( "\t{0}:\t{1}", myList.GetKey(i), myList.GetByIndex(i) );
      }
      Console.WriteLine();
   }
}
/* 
This code produces the following output.

The SortedList contains the following:
    -KEY-    -VALUE-
    four:    fox
    one:    The
    three:    brown
    two:    quick
*/
Imports System.Collections

Public Class SamplesSortedList    
    
    Public Shared Sub Main()
        
        ' Creates and initializes a new SortedList.
        Dim mySL As New SortedList()
        mySL.Add("one", "The")
        mySL.Add("two", "quick")
        mySL.Add("three", "brown")
        mySL.Add("four", "fox")
        
        ' Displays the SortedList.
        Console.WriteLine("The SortedList contains the following:")
        PrintKeysAndValues(mySL)
    End Sub    
    
    Public Shared Sub PrintKeysAndValues(myList As SortedList)
        Console.WriteLine(ControlChars.Tab & "-KEY-" & ControlChars.Tab & _
           "-VALUE-")
        Dim i As Integer
        For i = 0 To myList.Count - 1
            Console.WriteLine(ControlChars.Tab & "{0}:" & ControlChars.Tab & _
               "{1}", myList.GetKey(i), myList.GetByIndex(i))
        Next i
        Console.WriteLine()
    End Sub
End Class

' This code produces the following output.
' 
' The SortedList contains the following:
'     -KEY-    -VALUE-
'     four:    fox
'     one:    The
'     three:    brown
'     two:    quick
 

Comentários

O ponto de inserção é determinado com base no comparador selecionado, seja explicitamente ou por padrão, quando o objeto SortedList foi criado.The insertion point is determined based on the comparer selected, either explicitly or by default, when the SortedList object was created.

Se Count já for igual a Capacity, a capacidade do objeto SortedList 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 object is increased by automatically reallocating the internal array, and the existing elements are copied to the new array before the new element is added.

Você também pode usar a propriedade Item[Object] para adicionar novos elementos, definindo o valor de uma chave que não existe no objeto SortedList (por exemplo, myCollection["myNonexistentKey"] = myValue).You can also use the Item[Object] property to add new elements by setting the value of a key that does not exist in the SortedList object (for example, myCollection["myNonexistentKey"] = myValue). No entanto, se a chave especificada já existir no SortedList, a definição da propriedade Item[Object] substituirá o valor antigo.However, if the specified key already exists in the SortedList, setting the Item[Object] property overwrites the old value. Por outro lado, o método Add não modifica os elementos existentes.In contrast, the Add method does not modify existing elements.

Os elementos de um objeto SortedList são classificados pelas chaves de acordo com uma implementação específica de IComparer especificada quando o SortedList é criado ou de acordo com a implementação IComparable fornecida pelas próprias chaves.The elements of a SortedList object are sorted by the keys either according to a specific IComparer implementation specified when the SortedList is created or according to the IComparable implementation provided by the keys themselves.

Uma chave não pode ser null, mas um valor pode ser.A key cannot be null, but a value can be.

Esse método é uma operação O(n) para dados não classificados, em que 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ção será O(n).If insertion causes a resize, the operation is O(n).

Aplica-se a

Veja também