Какие основные коллекции данных поддерживаются в C#?

Пользователь

от richie_mayert , в категории: Другие , год назад

Какие основные коллекции данных поддерживаются в C#?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от lamar , год назад

@richie_mayert 

В C# поддерживаются следующие основные коллекции данных:

  1. List: упорядоченный список элементов типа T, который позволяет дублировать элементы.
  2. Dictionary
  3. Queue: FIFO (First-In-First-Out) очередь элементов типа T, где элементы добавляются в конец и удаляются из начала.
  4. Stack: LIFO (Last-In-First-Out) стек элементов типа T, где элементы добавляются и удаляются с одного конца.
  5. HashSet: неупорядоченное множество уникальных элементов типа T, где порядок элементов не гарантируется.
  6. LinkedList: двусвязный список элементов типа T, где каждый элемент ссылается на предыдущий и следующий элементы.
  7. SortedList
  8. SortedSet: сортированное множество уникальных элементов типа T.
  9. ObservableCollection: коллекция, которая автоматически уведомляет своих подписчиков об изменениях внутри себя.
  10. ConcurrentDictionary


Это лишь некоторые из основных коллекций данных в C#, и существует больше других коллекций и специализированных типов коллекций, которые также поддерживаются.

Пользователь

от ian.heidenreich , 4 месяца назад

@richie_mayert 

Дополню список коллекций данных в C#:

  1. ObservableCollection: коллекция, которая реализует интерфейс INotifyCollectionChanged для уведомления об изменениях коллекции.
  2. ConcurrentQueue: потокобезопасная очередь элементов типа T.
  3. ConcurrentStack: потокобезопасный стек элементов типа T.
  4. ConcurrentBag: потокобезопасный мешок элементов типа T, предназначенный для работы с набором элементов без какого-либо определенного порядка.
  5. BlockingCollection: коллекция, которая предоставляет средства синхронизации для добавления и удаления элементов из коллекции в многопоточной среде.
  6. Immutable Collections (System.Collections.Immutable): неизменяемые версии стандартных коллекций, таких как ImmutableArray, ImmutableList, ImmutableDictionary и другие.
  7. ConcurrentBag: потокобезопасный мешок элементов типа T, предназначенный для работы с набором элементов без какого-либо определенного порядка.
  8. BlockingCollection: коллекция, которая предоставляет средства синхронизации для добавления и удаления элементов из коллекции в многопоточной среде.
  9. Immutable Collections (System.Collections.Immutable): неизменяемые версии стандартных коллекций, таких как ImmutableArray, ImmutableList, ImmutableDictionary и другие.
  10. BitArray: коллекция, представляющая коллекцию битов и предоставляющая операции над битами.


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