Емкость коллекции типаSortedListcTKey, TValue>увеличивается автоматически по мере необходимости, когда в список добавляются новые элементы. Если текущая емкость коллекции превышается, то она увеличивается. Преимущество указания емкости коллекции типаSortedListcTKey, TValue>при ее создании заключается в снижении или полном исключении издержек на изменение размера коллекции. Разумеется, указывать емкость коллекции целесообразно лишь в том случае, если заранее известно, сколько элементов требуется хранить в ней.

В классеSortedListcTKey, TValue>определяется ряд собственных методов, помимо тех, что уже объявлены в интерфейсах, которые в нем реализуются. Некоторые из наиболее часто используемых методов этого класса перечислены в табл. 25.19. Следует иметь в виду, что перечислитель, возвращаемый методомGetEnumerator (), служит для перечисления пар "ключ-значение", хранящихся в отсортированном списке в виде объектов типаKeyValuePair.

Таблица 25.19. Наиболее часто используемые методы, определенные в классе SortedListCTKey, TValue>

Метод    Описание

public void    Add (TKey    key,   Добавляет в список пару “ключ-значение",

TValuevalue)   определяемую параметрами key и value.

Если ключ key уже находится в списке, то его значение не изменяется, и генерируется исключение ArgumentException public bool    ContainsKey (ТК key) Возвращает логическое значение true, если вы

зывающий список содержит объект key в каче-_стве ключа; а иначе логическое значение false

Метод

Описание

public bool

ContainsValue(TValuevalue)

public IEnumerator> GetEnumerator() public int IndexOfKey(TKeykey)

public int IndexOfValue(TValuevalue)

public bool Remove(TKeykey)

public void RemoveAt(intindex)public void TrimExcessO

Возвращает логическое значение true, если вызывающий список содержит значение value; в противном случае — логическое значение false

Возвращает перечислитель для вызывающего словаря

Возвращает индекс ключа key. Если искомый ключ не обнаружен в списке, возвращается значение -1

Возвращает индекс первого вхождения значения value в вызывающем списке. Если искомое значение не обнаружено в списке, возвращается значение -1 Удаляет из списка пару “ключ-значение” по указанному ключу key. При удачном исходе операции возвращается логическое значение true, а если ключ key отсутствует в списке — логическое значение false Удаляет из списка пару “ключ-значение” по указанному индексу index Сокращает избыточную емкость вызывающей коллекции в виде отсортированного списка

Кроме того, в классеSortedListопределяются собственные свойства, помимо тех, что уже объявлены в интерфейсах, которые в нем реализуются. Эти свойства приведены ниже.

Свойство

Описание

public int Capacity { get; set; }

Получает или устанавливает емкость

вызывающей коллекции в виде отсо

ртированного списка

public IComparer Comparer { get;

■ } Получает метод сравнения для вызы

вающего списка

public IList Keys { get; }

Получает коллекцию ключей

public IList Values { get; }

Получает коллекцию значений

И наконец, в классеSortedList

TValue>реализуется приведенный ниже

индексатор, определенный в интерфейсеIDictionaryCTKey, TValueX

public TValue this[TKeykey] { get; set;

} .

Этот индексатор служит для получения и

установки значения элемента коллекции,

Перейти на страницу:

Похожие книги