Поделиться через


SortedList<TKey,TValue>.Add(TKey, TValue) Метод

Определение

Добавляет элемент с указанными ключом и значением в словарь SortedList<TKey,TValue>.

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)

Параметры

key
TKey

Ключ добавляемого элемента.

value
TValue

Добавляемое значение элемента. Для ссылочных типов допускается значение null.

Реализации

Исключения

key имеет значение null.

Элемент с таким ключом уже существует в SortedList<TKey,TValue>.

Примеры

В следующем примере кода создается пустая SortedList<TKey,TValue> строка со строковыми ключами и используется Add метод для добавления некоторых элементов. В примере показано, что Add метод создает исключение ArgumentException при попытке добавить повторяющийся ключ.

Этот пример входит в состав более крупного примера использования класса SortedList<TKey,TValue>.

// 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."

Комментарии

Ключ не может иметь nullзначение , но значение может иметь значение , если тип значений в отсортированный список, TValue, является ссылочным типом.

Свойство также можно использовать Item[] для добавления новых элементов, задав значение ключа, не существующего SortedList<TKey,TValue>в ; например, myCollection["myNonexistentKey"] = myValue. Однако если указанный ключ уже существует в SortedList<TKey,TValue>, установка Item[] свойства перезаписывает старое значение. В отличие от этого, Add метод не изменяет существующие элементы.

Если Count значение уже равно Capacity, емкость увеличивается путем автоматического SortedList<TKey,TValue> перераспределения внутреннего массива, а существующие элементы копируются в новый массив перед добавлением нового элемента.

Этот метод является операцией O(n) для несортированных данных, где nCount. Это операция O(log n), если новый элемент добавляется в конец списка. Если вставка вызывает изменение размера, операция будет O(n).

Применяется к

См. также раздел