Коллекции и структуры данных
Обновлен: Ноябрь 2007
Связанные данные могут обрабатываться более эффективно, если они объединены в коллекцию. Вместо того чтобы писать код для обработки каждого отдельного объекта, можно использовать один и тот же код для обработки всех элементов коллекции.
Для управления коллекцией используйте класс Array и классы System.Collections для добавления, удаления и изменения либо отдельных элементов коллекции, либо диапазона элементов. Коллекцию можно скопировать целиком в другую коллекцию.
Некоторые классы Collections предоставляют возможность сортировки, и большинство из них индексированы. Управление памятью осуществляется автоматически, а вместимость коллекции увеличивается по мере необходимости. Синхронизация обеспечивает потокобезопасность при доступе к членам коллекции. Некоторые классы Collections могут создавать обертки, которые создают коллекции фиксированного размера или с ограничением только чтение. Любой класс Collections может создать свой собственный нумератор, облегчающий выполнение итерации элементов.
В .NET Framework, версия 2.0 классы универсальных коллекций предоставляют новые функциональные возможности и облегчают создание строго типизированных коллекций. Обратитесь к описанию пространств имен System.Collections.Generic и System.Collections.ObjectModel.
Функция LINQ to Objects позволяет использовать LINQ запросы для доступа к объектам в памяти, если объект типа реализовывает IEnumerable или IEnumerable<T>. LINQ запросы предоставляют общий шаблон для доступа к данным, являются более четкими и удобочитаемыми, чем стандартные циклы foreach, а также предоставляют возможности фильтрации, сортировки и группировки. LINQ запросы также могут повысить производительность. Дополнительные сведения представлены в разделе LINQ to Objects.
В этом подразделе
Определение коллекций
Описывает, что такое типы коллекций, а также некоторые различия между типами универсальных и неуниверсальных коллекций в библиотеке классов .NET Framework.Часто используемые типы коллекций
Описывает часто используемые типы универсальных и неуниверсальных коллекций, таких как Array, List<T> и Dictionary<TKey, TValue>.Битовые коллекции
Описывает типы коллекций BitArray и BitVector32.Специализированные коллекции
Описывает специализированные коллекции, такие как NameValueCollection, StringDictionary и StringCollection.Управление коллекциями и их создание
Рассматриваются вопросы выбора оптимального типа коллекции, перечисление коллекций, использование коллекций с несколькими потоками и сортировка коллекций.Когда следует использовать универсальные коллекции
Рассматривает использование типов универсальных коллекций.
Ссылка
Array
Описывает главные свойства класса Array, который предоставляет методы для создания, управления, поиска и сортировки массивов, которые служат в качестве базового класса для всех массивов в общеязыковой среде выполнения.System.Collections
Предоставляет справочную документацию по пространству имен System.Collections, содержащему интерфейсы и классы, которые определяют различные коллекции объектов.System.Collections.Generic
Предоставляет справочную документацию по пространству имен System.Collections.Generic, содержащему интерфейсы и классы, которые определяют универсальные коллекции.System.Collections.Specialized
Предоставляет справочную документацию по пространству имен System.Collections.Specialized, которое содержит специализированные и строго типизированные коллекции.