SortedList.Add(Object, Object) Methode

Definitie

Voegt een element met de opgegeven sleutel en waarde toe aan een 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)

Parameters

key
Object

De sleutel van het element dat moet worden toegevoegd.

value
Object

De waarde van het element dat moet worden toegevoegd. De waarde kan zijn null.

Implementeringen

Uitzonderingen

key is null.

Er bestaat al een element met de opgegeven key waarde in het SortedList object.

– of –

De SortedList interface wordt ingesteld op het gebruik van de IComparable interface en key implementeert de IComparable interface niet.

Het SortedList is alleen-lezen.

– of –

De SortedList heeft een vaste grootte.

Er is onvoldoende geheugen beschikbaar om het element toe te voegen aan de SortedList.

De vergelijkingsfunctie genereert een uitzondering.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u elementen toevoegt aan een SortedList object.

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

Opmerkingen

De invoegpositie wordt bepaald op basis van de geselecteerde vergelijkingsfunctie, expliciet of standaard, wanneer het SortedList object is gemaakt.

Als Count het object al gelijk is Capacityaan, wordt de capaciteit van het SortedList object verhoogd door de interne matrix automatisch opnieuw te verplaatsen en worden de bestaande elementen gekopieerd naar de nieuwe matrix voordat het nieuwe element wordt toegevoegd.

U kunt de Item[] eigenschap ook gebruiken om nieuwe elementen toe te voegen door de waarde in te stellen van een sleutel die niet bestaat in het SortedList object (bijvoorbeeld myCollection["myNonexistentKey"] = myValue). Als de opgegeven sleutel echter al bestaat in de SortedListeigenschap, wordt de oude waarde overschreven door de Item[] eigenschap in te stellen. De methode wijzigt daarentegen Add geen bestaande elementen.

De elementen van een SortedList object worden gesorteerd op de sleutels volgens een specifieke IComparer implementatie die is opgegeven bij het SortedList maken of volgens de IComparable implementatie die door de sleutels zelf wordt verstrekt.

Een sleutel kan niet zijn null, maar een waarde kan zijn.

Deze methode is een O(n) bewerking voor niet-gesorteerde gegevens, waarbij n .Count Het is een O(log n) bewerking als het nieuwe element wordt toegevoegd aan het einde van de lijst. Als de invoeging een grootte veroorzaakt, is O(n)de bewerking .

Van toepassing op

Zie ook