SortedList<TKey,TValue>.Add(TKey, TValue) Methode

Definition

Fügt dem SortedList<TKey,TValue> ein Element mit dem angegebenen Schlüssel und Wert hinzu.

public:
 virtual void Add(TKey key, TValue value);
public void Add (TKey key, TValue value);
abstract member Add : 'Key * 'Value -> unit
override this.Add : 'Key * 'Value -> unit
Public Sub Add (key As TKey, value As TValue)

Parameter

key
TKey

Der Schlüssel des hinzuzufügenden Elements.

value
TValue

Der Wert des hinzuzufügenden Elements. Der Wert kann für Verweistypen null sein.

Implementiert

Ausnahmen

key ist null.

In SortedList<TKey,TValue> ist bereits ein Element mit demselben Schlüssel enthalten.

Beispiele

Im folgenden Codebeispiel wird eine leere SortedList<TKey,TValue> Zeichenfolge mit Zeichenfolgenschlüsseln erstellt und die Methode verwendet Add , um einige Elemente hinzuzufügen. Im Beispiel wird veranschaulicht, dass die Add Methode beim ArgumentException Versuch, einen doppelten Schlüssel hinzuzufügen, ausgelöst wird.

Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die SortedList<TKey,TValue> Klasse bereitgestellt wird.

// Create a new sorted list of strings, with string
// keys.
SortedList<String^, String^>^ openWith =
    gcnew SortedList<String^, String^>();

// Add some elements to the list. There are no 
// duplicate keys, but some of the values are duplicates.
openWith->Add("txt", "notepad.exe");
openWith->Add("bmp", "paint.exe");
openWith->Add("dib", "paint.exe");
openWith->Add("rtf", "wordpad.exe");

// The Add method throws an exception if the new key is
// already in the list.
try
{
    openWith->Add("txt", "winword.exe");
}
catch (ArgumentException^)
{
    Console::WriteLine("An element with Key = \"txt\" already exists.");
}
// Create a new sorted list of strings, with string
// keys.
SortedList<string, string> openWith =
    new SortedList<string, string>();

// Add some elements to the list. There are no
// duplicate keys, but some of the values are duplicates.
openWith.Add("txt", "notepad.exe");
openWith.Add("bmp", "paint.exe");
openWith.Add("dib", "paint.exe");
openWith.Add("rtf", "wordpad.exe");

// The Add method throws an exception if the new key is
// already in the list.
try
{
    openWith.Add("txt", "winword.exe");
}
catch (ArgumentException)
{
    Console.WriteLine("An element with Key = \"txt\" already exists.");
}
' Create a new sorted list of strings, with string 
' keys. 
Dim openWith As New SortedList(Of String, String)

' Add some elements to the list. There are no 
' duplicate keys, but some of the values are duplicates.
openWith.Add("txt", "notepad.exe")
openWith.Add("bmp", "paint.exe")
openWith.Add("dib", "paint.exe")
openWith.Add("rtf", "wordpad.exe")

' The Add method throws an exception if the new key is 
' already in the list.
Try
    openWith.Add("txt", "winword.exe")
Catch 
    Console.WriteLine("An element with Key = ""txt"" already exists.")
End Try

Hinweise

Ein Schlüssel kann nicht nullsein, aber ein Wert kann sein, wenn der Werttyp in der sortierten Liste TValueein Verweistyp ist.

Sie können auch die Item[] zum Hinzufügen neuer Elemente durch Festlegen des Werts eines Schlüssels, die Eigenschaft ist nicht vorhanden, der SortedList<TKey,TValue>, z. B. myCollection["myNonexistentKey"] = myValue Wenn der angegebene Schlüssel jedoch bereits in der SortedList<TKey,TValue>Eigenschaft vorhanden ist, überschreibt das Festlegen der Item[] Eigenschaft den alten Wert. Im Gegensatz dazu ändert die Add Methode keine vorhandenen Elemente.

Wenn Count es bereits gleich Capacityist, wird die Kapazität des SortedList<TKey,TValue> neuen Elements erhöht, indem das interne Array automatisch neu zugewiesen wird, und die vorhandenen Elemente werden in das neue Array kopiert, bevor das neue Element hinzugefügt wird.

Diese Methode ist ein O(n)-Vorgang für nicht sortierte Daten, wo 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ügemarke eine Änderung der Größe verursacht, ist der Vorgang O(n).

Gilt für:

Siehe auch