SortedList<TKey,TValue>.Add(TKey, TValue) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
öğesine belirtilen anahtar ve değere SortedList<TKey,TValue>sahip bir öğe ekler.
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)
Parametreler
- key
- TKey
Eklenecek öğenin anahtarı.
- value
- TValue
Eklenecek öğenin değeri. Değer başvuru türleri için olabilir null
.
Uygulamalar
Özel durumlar
key
, null
değeridir.
içinde aynı anahtara sahip bir öğe zaten var SortedList<TKey,TValue>.
Örnekler
Aşağıdaki kod örneği, dize anahtarlarıyla boş bir SortedList<TKey,TValue> dize oluşturur ve yöntemini kullanarak Add bazı öğeleri ekler. Örnek, yinelenen bir anahtar eklemeye çalışırken yönteminin bir ArgumentException oluşturduğunu Add gösterir.
Bu kod örneği, sınıfı için SortedList<TKey,TValue> sağlanan daha büyük bir örneğin parçasıdır.
// 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
// Create a new sorted list of strings, with string
// keys.
let openWith = 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");
with
| :? ArgumentException ->
printfn "An element with Key = \"txt\" already exists."
Açıklamalar
Anahtar olamaz null
, ancak sıralanmış listedeki değerlerin türü bir başvuru türüyse, TValue
bir değer olabilir.
özelliğini, içinde bulunmayan SortedList<TKey,TValue>bir anahtarın değerini ayarlayarak yeni öğeler eklemek için de kullanabilirsinizItem[]; örneğin, myCollection["myNonexistentKey"] = myValue
. Ancak, belirtilen anahtar içinde SortedList<TKey,TValue>zaten varsa, özelliğini ayarlamak Item[] eski değerin üzerine yazar. Buna karşılık, Add yöntemi mevcut öğeleri değiştirmez.
zaten eşitse CountCapacity, iç dizi otomatik olarak yeniden konumlandırılarak kapasitesini SortedList<TKey,TValue> artırır ve varolan öğeler yeni öğe eklenmeden önce yeni diziye kopyalanır.
Bu yöntem, sıralanmamış veriler için bir O(n
) işlemidir; burada n
olur Count. Listenin sonuna yeni öğe eklenirse bu bir O(log n
) işlemidir. Ekleme yeniden boyutlandırmaya neden oluyorsa işlem O()n
olur.