SortedList.Add(Object, Object) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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 null
sein.
Implementiert
Ausnahmen
key
ist null
.
Ein Element mit dem angegebenen key
ist bereits im SortedList-Objekt vorhanden.
- oder -
SortedList ist auf die Verwendung der IComparable-Schnittstelle festgelegt, und key
implementiert die IComparable-Schnittstelle nicht.
Es ist nicht genügend Arbeitsspeicher verfügbar, um das Element zu SortedList hinzuzufügen.
Der Vergleich löst eine Ausnahme aus.
Beispiele
Im folgenden Codebeispiel wird gezeigt, wie Einem SortedList -Objekt Elemente hinzugefügt werden.
#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
Hinweise
Die Einfügemarke wird basierend auf dem ausgewählten Vergleich bestimmt, entweder explizit oder standardmäßig, wenn das SortedList Objekt erstellt wurde.
Wenn Count bereits gleich Capacityist, wird die Kapazität des SortedList Objekts erhöht, indem das interne Array automatisch neu zugeordnet wird, und die vorhandenen Elemente werden in das neue Array kopiert, bevor das neue Element hinzugefügt wird.
Sie können auch die Item[] -Eigenschaft verwenden, um neue Elemente hinzuzufügen, indem Sie den Wert eines Schlüssels festlegen, myCollection["myNonexistentKey"] = myValue
der SortedList im Objekt nicht vorhanden ist (z. B. ). Wenn der angegebene Schlüssel jedoch bereits im SortedListvorhanden 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 nach den Schlüsseln entweder nach einer bestimmten IComparer Implementierung sortiert, die beim Erstellen von SortedList angegeben wird, oder nach der Implementierung, die IComparable 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 unsortierte Daten, wobei n
ist Count. Es handelt sich um einen O(log n)
Vorgang, wenn das neue Element am Ende der Liste hinzugefügt wird. Wenn die Einfügung zu einer Größenänderung führt, lautet O(n)
der Vorgang .