Junior
51
0
questionbank

Какие коллекции в C# вы знаете?

Answer from sobes.tech neural network

В C# есть несколько категорий коллекций:

  1. Необобщенные (Non-generic): Работают с типом object и требуют приведения типов.

    • ArrayList - динамический массив.
    • Hashtable - коллекция пар ключ-значение на основе хеш-таблицы.
    • Stack - стековая коллекция (LIFO).
    • Queue - очередная коллекция (FIFO).
    • SortedList - коллекция пар ключ-значение, отсортированная по ключу.
  2. Обобщенные (Generic): Предоставляют типобезопасность и лучшую производительность.

    • List<T> - типобезопасный динамический массив.
    • Dictionary<TKey, TValue> - типобезопасная коллекция пар ключ-значение, основанная на хеш-таблице.
    • Stack<T> - типобезопасная стековая коллекция (LIFO).
    • Queue<T> - типобезопасная очередная коллекция (FIFO).
    • HashSet<T> - коллекция уникальных элементов без определенного порядка.
    • SortedList<TKey, TValue> - типобезопасная коллекция пар ключ-значение, отсортированная по ключу.
    • SortedDictionary<TKey, TValue> - типобезопасная коллекция пар ключ-значение, отсортированная по ключу в виде бинарного дерева поиска.
    • LinkedList<T> - двусвязный список.
  3. Потокобезопасные (Thread-safe): Для использования в многопоточной среде.

    • ConcurrentBag<T> - неупорядоченная коллекция элементов, потокобезопасная.
    • ConcurrentDictionary<TKey, TValue> - потокобезопасный словарь.
    • ConcurrentQueue<T> - потокобезопасная очередь (FIFO).
    • ConcurrentStack<T> - потокобезопасный стек (LIFO).

В C# есть несколько категорий коллекций:

  1. Необобщенные (Non-generic): Работают с типом object и требуют приведения типов.

    • ArrayList - динамический массив.
    • Hashtable - коллекция пар ключ-значение на основе хеш-таблицы.
    • Stack - стековая коллекция (LIFO).
    • Queue - очередная коллекция (FIFO).
    • SortedList - коллекция пар ключ-значение, отсортированная по ключу.
  2. Обобщенные (Generic): Предоставляют типобезопасность и лучшую производительность.

    • List<T> - типобезопасный динамический массив.
    • Dictionary<TKey, TValue> - типобезопасная коллекция пар ключ-значение, основанная на хеш-таблице.
    • Stack<T> - типобезопасная стековая коллекция (LIFO).
    • Queue<T> - типобезопасная очередная коллекция (FIFO).
    • HashSet<T> - коллекция уникальных элементов без определенного порядка.
    • SortedList<TKey, TValue> - типобезопасная коллекция пар ключ-значение, отсортированная по ключу.
    • SortedDictionary<TKey, TValue> - типобезопасная коллекция пар ключ-значение, отсортированная по ключу в виде бинарного дерева поиска.
    • LinkedList<T> - двусвязный список.
  3. Потокобезопасные (Thread-safe): Для использования в многопоточной среде.

    • ConcurrentBag<T> - неупорядоченная коллекция элементов, потокобезопасная.
    • ConcurrentDictionary<TKey, TValue> - потокобезопасный словарь.
    • ConcurrentQueue<T> - потокобезопасная очередь (FIFO).
    • ConcurrentStack<T> - потокобезопасный стек (LIFO).

Register or sign in to get access to full answers for all questions from the question bank.

csharp-collectionlistdictionaryhashsetarraylinked-listqueuestack