Загальні поняття про колекції

Загальні поняття про колекції


Зміст



1. Яка головна перевага колекцій?

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

Усі колекції реалізовані на базі чітко визначених інтерфейсів.

 


2. Які є види колекцій в C# .NET?

У середовищі .NET Framework 4 є 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;