SortedList.Add(Object, Object) SortedList.Add(Object, Object) SortedList.Add(Object, Object) SortedList.Add(Object, Object) Method

Définition

Ajoute un élément avec la clé et la valeur spécifiées dans un objet 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)

Paramètres

key
Object Object Object Object

Clé de l'élément à ajouter.The key of the element to add.

value
Object Object Object Object

Valeur de l'élément à ajouter.The value of the element to add. La valeur peut être null.The value can be null.

Implémente

Exceptions

Un élément possédant le key spécifié existe déjà dans l'objet SortedList.An element with the specified key already exists in the SortedList object.

- ou --or- SortedList est défini pour utiliser l'interface IComparable et key n'implémente pas l'interface IComparable.The SortedList is set to use the IComparable interface, and key does not implement the IComparable interface.

SortedList est en lecture seule.The SortedList is read-only.

ou-or- SortedList est de taille fixe.The SortedList has a fixed size.

La mémoire disponible est insuffisante pour ajouter l'élément à SortedList.There is not enough available memory to add the element to the SortedList.

Le comparateur lève une exception.The comparer throws an exception.

Exemples

L’exemple de code suivant montre comment ajouter des éléments à SortedList un objet.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
 

Remarques

Le point d’insertion est déterminé en fonction du comparateur sélectionné, soit explicitement, soit par défaut SortedList , lors de la création de l’objet.The insertion point is determined based on the comparer selected, either explicitly or by default, when the SortedList object was created.

Si Count est déjà Capacityégal à, la capacité de SortedList l’objet est augmentée en réallouant automatiquement le tableau interne, et les éléments existants sont copiés dans le nouveau tableau avant l’ajout du nouvel élément.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.

Vous pouvez également utiliser la Item[Object] propriété pour ajouter de nouveaux éléments en définissant la valeur d’une clé qui n’existe pas SortedList dans l’objet (par myCollection["myNonexistentKey"] = myValueexemple,).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). Toutefois, si la clé spécifiée existe déjà dans le SortedList, la définition Item[Object] de la propriété remplace l’ancienne valeur.However, if the specified key already exists in the SortedList, setting the Item[Object] property overwrites the old value. En revanche, la Add méthode ne modifie pas les éléments existants.In contrast, the Add method does not modify existing elements.

Les éléments d’un SortedList objet sont triés par les clés selon une implémentation spécifique IComparer spécifiée lors de la SortedList création de ou selon l' IComparable implémentation fournie par les clés elles-mêmes.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.

Une clé ne peut nullpas être, mais une valeur peut être.A key cannot be null, but a value can be.

Cette méthode est une opération On() pour les données non triées, nCountest.This method is an O(n) operation for unsorted data, where n is Count. Il s’agit d’une opération nO (log) si le nouvel élément est ajouté à la fin de la liste.It is an O(log n) operation if the new element is added at the end of the list. Si l’insertion entraîne un redimensionnement, l’opération estnO ().If insertion causes a resize, the operation is O(n).

S’applique à

Voir aussi