Он должен возвращать -1, если вызывающий объект предшествует другому объектуother; 1, если вызывающий объект следует после объекта other; и наконец, 0, если значения обоих объектов одинаковы для целей сортировки. А само сравнение обеспечивает объект, передаваемый через параметр comparer.

ИнтерфейсIStructuralEquatableслужит для выяснения структурного равенства путем сравнения содержимого двух объектов. В этом интерфейсе определены следующие методы.

bool Equals(objectother,IEqualityComparercomparer)int GetHashCode(IEqualityComparercomparer)

МетодEquals() должен возвращать логическое значениеtrue,если вызывающий объект и другой объектotherравны. А методGetHashCode() должен возвращать хеш-код для вызывающего объекта. Результаты, возвращаемые обоими методами, должны быть совместимы. Само сравнение обеспечивает объект, передаваемый через параметрcomparer.

Структура DictionaryEntry

В пространстве именSystem. Collectionsопределена структураDictionaryEntry.Необобщенные коллекции пар "ключ-значение" сохраняют эти пары в объекте типаDictionaryEntry.В данной структуре определяются два следующих свойства.

public object Key { get; set; } public object Value { get; set; }

Эти свойства служат для доступа к ключу или значению, связанному с элементом коллекции. Объект типаDictionaryEntryможет быть сконструирован с помощью конструктора:

public DictionaryEntry(objectkey,objectvalue)гдеkeyобозначает ключ, avalue— значение.

Классы необобщенных коллекций

А теперь, когда представлены интерфейсы необобщенных коллекций, можно перейти к рассмотрению стандартных классов, в которых они реализуются. Ниже приведены классы необобщенных коллекций, за исключением коллекции типаBitArray,рассматриваемой далее в этой главе.

Класс

Описание

ArrayList

Определяет динамический массив, т.е. такой массив, который может при

необходимости увеличивать свой размер

Hashtable

Определяет хеш-таблицу для пар “ключ-значение”

Queue

Определяет очередь, или список, действующий по принципу “первым при

шел — первым обслужен”

SortedList

Определяет отсортированный список пар “ключ-значение”

Stack

Определяет стек, или список, действующий по принципу “первым пришел —

последним обслужен”

Каждый из этих классов коллекций подробно рассматривается и демонстрируется далее на конкретных примерах.

Класс Ar г aylii s t

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

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