Клас Queue
Призначення класу Queue — втілення cтруктури черги — лінійно упорядкованої структури (послідовності) даних, у яку можна вставити елемент з одного кінця або з якої можна вилучити елемент з іншого кінця. Інакше кажучи, для використання принципу: «Першим зайшов, перший вийшов» (англійською First In First Out, FIFO).
Загальне уявлення про клас Queue можна отримати, переглянувши код програми та проаналізувавши її виведенням для черги, в якій значення мають тип string.
У поданому далі описі:
-
T — тип значення елементів списку List;
-
у дужках () чи <> вказано тип параметра.
Основні операції-
Enqueue — додає елемент до кінця черги;
-
Dequeue — видаляє найстаріший елемент з початку черги;
-
Peek — повертає елемент на початку черги без його видалення.
Приймає null як допустиме значення для типів посилань і дозволяє дублювати елементи.
Конструктори
-
Queue<T>() — ініціалізує порожній представник класу з початковою ємністю як усталено.
-
Queue<T>(IEnumerable<T>) — ініціалізує представник, який містить елементи, скопійовані зі вказаної колекції, та має ємність, достатню для розміщення всіх скопійованих елементів.
-
Queue<T>(Int32) — ініціалізує порожній представник класу з зазначеною початковою ємністю.
Властивості-
Count — кількість елементів.
Методи
-
Clear() — видаляє всі об'єкти колекції.
-
Contains(T) — визначає, чи входить елемент у колекцію.
-
CopyTo(T[], Int32) — копіює елементи колекції у наявний вказаний одновимірний масив Array, починаючи з вказаного значення індексу масиву.
-
Dequeue() — видаляє об'єкт із початку колекції та повертає його.
-
Enqueue(T) — додає об'єкт до кінця колекції.
-
EnsureCapacity(Int32) — забезпечує, щоб ємність цієї черги була принаймні вказаною шляхом збільшення поточної ємності удвічі до досягнення прийнятного значення.
-
Equals(Object) — повертає true, якщо вказаний об'єкт дорівнює поточному. Інакше повертає false (успадковано від Object).
-
GetEnumerator() — повертає перечислювач, який перебирає елементи колекції.
-
GetHashCode() — хеш-функція як усталено (успадковано від Object).
-
GetType() — повертає об'єкт Type для поточного екземпляра (успадковано від Object).
-
MemberwiseClone() — створює неповну копію об'єкта Object (успадковано від Object).
-
Peek() — повертає об'єкт, що перебуває на початку черги без видалення його.
-
ToArray() — копіює елементи колекції у новий масив.
-
ToString() — повертає рядок, утворений з поточного об'єкта (успадковано від Object).
-
TrimExcess() — встановлює ємність, що дорівнює фактичної кількості елементів, якщо ця кількість становить менше 90 відсотків поточної ємності.
-
TryDequeue(T) — видаляє об'єкт з початку черги і копіює його в параметр result.
-
TryPeek(T) — повертає значення, що вказує, чи є на початку черги об'єкт. Якщо такий є, копіює його параметр result. Не видаляє об'єкт з черги.
Додаткові дані про явні втілення інтерфейсу, методи розширення потоко-безпечність подано на сторінці сайту learn.microsoft.com.