SortedList.Add(Object, Object) Methode

Definition

Fügt einem SortedList Objekt ein Element mit dem angegebenen Schlüssel und Wert hinzu.

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)

Parameter

key
Object

Der Schlüssel des hinzuzufügenden Elements.

value
Object

Der Wert des hinzuzufügenden Elements. Der Wert kann sein null.

Implementiert

Ausnahmen

key ist null.

Ein Element mit dem angegebenen key Element ist bereits im SortedList Objekt vorhanden.

-oder-

Es SortedList wird festgelegt, dass die IComparable Schnittstelle verwendet wird und key die IComparable Schnittstelle nicht implementiert wird.

Dies SortedList ist schreibgeschützt.

-oder-

Die SortedList Größe hat eine feste Größe.

Es steht nicht genügend Arbeitsspeicher zur Verfügung, um das Element dem SortedListElement hinzuzufügen.

Der Vergleich löst eine Ausnahme aus.

Beispiele

Das folgende Codebeispiel zeigt, wie Einem Objekt Elemente SortedList hinzugefügt werden.

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

Hinweise

Die Einfügemarke wird basierend auf dem ausgewählten Vergleichselement entweder explizit oder standardmäßig bestimmt, wenn das SortedList Objekt erstellt wurde.

Wenn Count bereits gleich ist Capacity, wird die Kapazität des SortedList Objekts erhöht, indem das interne Array automatisch neu zugeordnet wird und die vorhandenen Elemente in das neue Array kopiert werden, bevor das neue Element hinzugefügt wird.

Sie können die Item[] Eigenschaft auch verwenden, um neue Elemente hinzuzufügen, indem Sie den Wert eines Schlüssels festlegen, der SortedList im Objekt nicht vorhanden ist (z. B myCollection["myNonexistentKey"] = myValue. ). Wenn der angegebene Schlüssel jedoch bereits im SortedListBereich vorhanden ist, überschreibt das Festlegen der Item[] Eigenschaft den alten Wert. Im Gegensatz dazu ändert die Add Methode keine vorhandenen Elemente.

Die Elemente eines SortedList Objekts werden entweder nach den Schlüsseln nach einer bestimmten IComparer Implementierung sortiert, die SortedList bei der Erstellung oder gemäß der IComparable implementierung angegeben wird, die von den Schlüsseln selbst bereitgestellt wird.

Ein Schlüssel kann nicht sein null, aber ein Wert kann sein.

Diese Methode ist ein O(n) Vorgang für nicht sortierte Daten, wobei n dies der Fall ist Count. Es handelt sich um einen O(log n) Vorgang, wenn das neue Element am Ende der Liste hinzugefügt wird. Wenn beim Einfügen eine Größenänderung verursacht wird, lautet O(n)der Vorgang .

Gilt für:

Weitere Informationen