Общие понятия о коллекциях

Общие понятия о коллекциях


Содержание


1. Какое главное преимущество коллекций?

Коллекции предназначены для стандартизированной обработки групп объектов в программе. Под стандартизированной обработкой понимается использование таких известных динамических структур данных как: стеки, очереди, линейные списки, хеш-таблицы. Кроме того, в коллекциях обеспечиваются распространенные операции обработки массивов данных, например, сортировка.

Все коллекции реализованы на базе четко определенных интерфейсов.

 


2. Какие виды коллекций поддерживаются .NET Framework 4.0 (C#)?

В среде .NET Framework 4.0 поддерживается 5 видов коллекций:

  • необобщенные;
  • специальные;
  • коллекции с поразрядной (битовой) организацией;
  • обобщенные;
  • параллельные (многопоточные).

 


3. Какими типами данных оперируют необобщенные коллекции?

Необобщенные коллекции могут оперировать данными любого типа. Это связано с тем, что такие коллекции оперируют данными типа object.

Кроме того, в необобщенных коллекциях допускается наличие данных разных типов.

 


4. В каком пространстве имен находятся необобщенные коллекции?

Ответ:

System.Collections

Для подключения необобщенной коллекции в тексте программы должно быть указано:

using System.Collections;

 


5. Какие основные структуры данных реализуют необобщенные коллекции?

Ответ:

  • динамический массив;
  • стек;
  • очередь;
  • словарь.


 


6. Какими типами данных оперируют специальные коллекции?

Специальные коллекции оперируют данными определенного типа.

Например, в некоторых специальных коллекциях:

  • класс StringCollection оптимизирован для работы с коллекциями символьных строк;
  • класс StringDictionary предназначен для обработки хеш-таблиц, в которых сохраняются пары «ключ-значение», причем тип ключа и значение есть string.

 


7. В каком пространстве имен объявлены специальные коллекции?

В пространстве имен

System.Collections.Specialized

Чтобы подключить использование специальных коллекций в программе нужно набрать:

using System.Collections.Specialized;

 


8. Какие коллекции с поразрядной организацией реализованы в .NET Framework?

Ответ: коллекция типа BitArray. Эта коллекция поддерживает операции над отдельными двоичными разрядами (битами). Этими операциями могут быть логическое «И» (AND), логическое «ИЛИ» (OR), логическое отрицание «Нет» (NOT), логическое исключающее «ИЛИ» (XOR).

 


9. В каком пространстве имен объявляется коллекция с поразрядной организацией BitArray?

Ответ:

System.Collections

 


10. Какие стандартные структуры данных реализуют обобщенные коллекции?

Ответ:

  • связные списки;
  • стеки;
  • очереди;
  • словари.

 


11. Какая особенность использования параллельных (многопоточных) коллекций?

Параллельные (многопоточные) коллекции обеспечивают многопоточный доступ к коллекции. Такие коллекции являются потокобезопасными и используют методы параллельного программирования. Это означает, что эти коллекции обеспечивают безопасную работу программы в случае, если к коллекции возможный доступ двух и больше параллельно выполняемых потоков.

 


12. В каком пространстве имен определены параллельные (многопоточные) коллекции?

Ответ:

В пространстве имен

System.Collection.Concurrent

Для работы с параллельными коллекциями в программный код нужно включить строку:

using System.Collections.Concurrent;