SortedList.Add(Object, Object) Метод

Определение

Добавляет элемент с указанным ключом и значением SortedList в объект.

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)

Параметры

key
Object

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

value
Object

Значение добавляемого элемента. Значение может быть null.

Реализации

Исключения

key равно null.

Элемент с указанным key уже существует в объекте SortedList .

–или–

Этот SortedList интерфейс IComparable используется и key не реализует IComparable интерфейс.

Доступно SortedList только для чтения.

–или–

Имеет SortedList фиксированный размер.

Недостаточно доступной памяти для добавления элемента в SortedListэлемент.

Средство сравнения создает исключение.

Примеры

В следующем примере кода показано, как добавить элементы в SortedList объект.

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

Комментарии

Точка вставки определяется на основе выбранного средства сравнения ( явно или по умолчанию) при SortedList создании объекта.

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

Можно также использовать Item[] свойство для добавления новых элементов, задав значение ключа, который не существует в SortedList объекте (например, myCollection["myNonexistentKey"] = myValue). Тем не менее, если указанный ключ уже существует в SortedList, задав Item[] свойство перезаписывает старое значение. Напротив, Add метод не изменяет существующие элементы.

Элементы SortedList объекта сортируются по ключам в соответствии с определенной IComparer реализацией, указанной при SortedList создании или в соответствии IComparable с реализацией, предоставленной самими ключами.

Ключ не может быть null, но значение может быть.

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

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

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