Поделиться через


Коллекции и структуры данных

Обновлен: Ноябрь 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.

В этом подразделе

Ссылка

  • Array
    Описывает главные свойства класса Array, который предоставляет методы для создания, управления, поиска и сортировки массивов, которые служат в качестве базового класса для всех массивов в общеязыковой среде выполнения.

  • System.Collections
    Предоставляет справочную документацию по пространству имен System.Collections, содержащему интерфейсы и классы, которые определяют различные коллекции объектов.

  • System.Collections.Generic
    Предоставляет справочную документацию по пространству имен System.Collections.Generic, содержащему интерфейсы и классы, которые определяют универсальные коллекции.

  • System.Collections.Specialized
    Предоставляет справочную документацию по пространству имен System.Collections.Specialized, которое содержит специализированные и строго типизированные коллекции.