Partager via


SortedList.Add(Object, Object) Méthode

Définition

Ajoute un élément avec la clé et la valeur spécifiées dans un objet SortedList.

public:
 virtual void Add(System::Object ^ key, System::Object ^ value);
public virtual void Add (object key, 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

Clé de l'élément à ajouter.

value
Object

Valeur de l'élément à ajouter. La valeur peut être null.

Implémente

Exceptions

key a la valeur null.

Un élément possédant le key spécifié existe déjà dans l'objet SortedList.

- ou -

SortedList est défini pour utiliser l'interface IComparable et key n'implémente pas l'interface IComparable.

SortedList est en lecture seule.

- ou -

SortedList est de taille fixe.

La mémoire disponible est insuffisante pour ajouter l'élément à SortedList.

Le comparateur lève une exception.

Exemples

L’exemple de code suivant montre comment ajouter des éléments à un SortedList objet.

#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é, explicitement ou par défaut, lors de la création de l’objet SortedList .

Si Count la valeur est déjà égale Capacityà , la capacité de l’objet SortedList est augmentée en réaffectant automatiquement le tableau interne, et les éléments existants sont copiés dans le nouveau tableau avant l’ajout du nouvel élément.

Vous pouvez également utiliser la Item[] propriété pour ajouter de nouveaux éléments en définissant la valeur d’une clé qui n’existe pas dans l’objet SortedList (par exemple, myCollection["myNonexistentKey"] = myValue). Toutefois, si la clé spécifiée existe déjà dans , la SortedListdéfinition de la Item[] propriété remplace l’ancienne valeur. En revanche, la Add méthode ne modifie pas les éléments existants.

Les éléments d’un SortedList objet sont triés par les clés en fonction d’une implémentation spécifique IComparer spécifiée lors de la SortedList création de ou en fonction de l’implémentation IComparable fournie par les clés elles-mêmes.

Une clé ne peut pas être null, mais une valeur peut l’être.

Cette méthode est une O(n) opération pour les données non triées, où n est Count. Il s’agit d’une O(log n) opération si le nouvel élément est ajouté à la fin de la liste. Si l’insertion provoque un redimensionnement, l’opération est O(n).

S’applique à

Voir aussi