Герберт Шилдт - C# 4.0 полное руководство - 2011
- Название:C# 4.0 полное руководство - 2011
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Герберт Шилдт - C# 4.0 полное руководство - 2011 краткое содержание
C# 4.0 полное руководство - 2011 - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
bool IsProperSupersetOf(lEnumera
возвращает логическое значение true,если вы
ble other)
зывающее множество является правильным надмножеством другого множества other,а иначе — логическое значение false
bool IsSubsetOf(IEnumerable
Возвращает логическое значение true,если вы
other)
зывающее множество является подмножеством другого множества other , а иначе — логическое значение false
bool
Возвращает логическое значение true,если вы
IsSupersetOf(IEnumerable
зывающее множество является надмножеством
other)
другого множества other,а иначе — логическое значение false
bool Overlaps(IEnumerable
Возвращает логическое значение true,если вы
other)
зывающее множество и другое множество other содержат хотя бы один общий элемент, а иначе — логическое значение false
bool SetEquals(IEnumerable
Возвращает логическое значение true,если все
other)
элементы вызывающего множества и другого множества other оказываются общими, а иначе —логическое значение false.Порядок расположения элементов не имеет значения, а дублирующиеся элементы во другом множестве other игнорируются
void SymmetricExceptWith
После вызова этого метода вызывающее множе
(IEnumerable other)
ство будет содержать симметрическую разность своих элементов и элементов другого множества
other
void UnionWith(IEnumerable
После вызова этого метода вызывающее множе
other)
ство будет содержать объединение своих элементов и элементов другого множества other
Структура KeyValuePair
В пространстве имен System.Collections. Generic определена структура KeyValuePair. Она служит для хранения ключа и его значения и применяется в классах обобщенных коллекций, в которых хранятся пары "ключ-значение", как, например, в классе Dictionary В этой структуре определяются два следующих свойства.
public TKey Key { get; }; public TValue Value { get; };
В этих свойствах хранятся ключ и значение соответствующего элемента коллекции. Для построения объекта типа KeyValuePair служит конструктор:
public KeyValuePair(TKey key, TValue value) где key обозначает ключ, a value — значение.
Классы обобщенных коллекций
Как упоминалось ранее, классы обобщенных коллекций по большей части соответствуют своим необобщенным аналогам, хотя в некоторых случаях они носят другие имена. Отличаются они также своей организацией и функциональными возможностями. Классы обобщенных коллекций определяются в пространстве имен System. Collections . Generic. В табл. 25.14 приведены классы, рассматриваемые в этой главе. Эти классы составляют основу обобщенных коллекций.
Таблица 25.14. Основные классы обобщенных коллекций
Класс
Описание
Dictionary
TValue>
Сохраняет пары “ключ-значение". Обеспечивает такие же функциональные возможности, как и необобщенный класс Hashtable
HashSet
Сохраняет ряд уникальных значений, используя хеш-таблицу
LinkedList
Сохраняет элементы в двунаправленном списке
List
Создает динамический массив. Обеспечивает такие же функциональные возможности, как и необобщенный класс ArrayList
Queue
Создает очередь. Обеспечивает такие же функциональные возможности, как и необобщенный класс Queue
SortedDictionary
Создает отсортированный список из пар “ключ-
TValue>
значение"
SortedList
TValue>
Создает отсортированный список из пар “ключ-значение”. Обеспечивает такие же функциональные возможности, как и необобщенный класс SortedList
SortedSet
Создает отсортированное множество
Stack
Создает стек. Обеспечивает такие же функциональные возможности, как и необобщенный класс Stack
ПРИМЕЧАНИЕ
В пространстве имен System. Collections. Genericнаходятся также следующие классы: класс SynchronizedCollectionсинхронизированной коллекции на основе класса IList;класс SynchronizedReadOnlyCollection,доступной только для чтения синхронизированной коллекции на основе класса lList;абстрактный класс SynchronizedKeyCollectioncK,т>, служащий в качестве базового для класса коллекции System. ServiceModel. UriSchemeKeyedCollection;а также класс KeyedByTypeCollectionколлекции, в которой в качестве ключей используются отдельные типы данных.
Класс List
В классе List реализуется обобщенный динамический массив. Он ничем принципиально не отличается от класса необобщенной коллекции ArrayList. В этом классе реализуются интерфейсы ICollection, ICollection, IList, IList, IEnumerable и IEnumerable. У класса List имеются следующие конструкторы.
public List()
public List(IEnumerable collection) public List(int capacity)
Первый конструктор создает пустую коллекцию класса List с выбираемой по умолчанию первоначальной емкостью. Второй конструктор создает коллекцию типа List с количеством инициализируемых элементов, которое определяется параметром collection и равно первоначальной емкости массива. Третий конструктор создает коллекцию типа List, имеющую первоначальную емкость, задаваемую параметром capacity . В данном случае емкость обозначает размер базового массива, используемого для хранения элементов коллекции. Емкость коллекции, создаваемой в виде динамического массива, может увеличиваться автоматически по мере добавления в нее элементов.
В классе List определяется ряд собственных методов, помимо тех, что уже объявлены в интерфейсах, которые в нем реализуются. Некоторые из наиболее часто используемых методов этого класса перечислены в табл. 25.15.
Таблица 25.15. Наиболее часто используемые методы, определенные в классе List
Метод
Описание
public virtual void AddRange(Icollection - collection) public virtual int BinarySearch(T item)
Интервал:
Закладка: