Черга C# із прикладами: що таке черга C# і як її використовувати?
Що таке черга в C#?
Черга — це особлива колекція випадків, яка представляє концепцію «першим прийшов, першим вийшов». Уявіть собі чергу людей, які чекають на автобус. Як правило, перша людина, яка входить у чергу, буде першою людиною, яка увійде в автобус. Аналогічно, остання людина, яка увійде в чергу, буде останньою людиною, яка увійде в автобус. Елементи додаються в чергу один над одним.
Процес додавання елемента до черги є операцією постановки в чергу. Щоб видалити елемент із черги, ви можете скористатися операцією видалення з черги. Операція в Queues C# схожа на стек, який ми бачили раніше.
Давайте детальніше розглянемо, як використовувати Queue у C# та операції, доступні для колекції Queue у C#.
Оголошення черги
Оголошення черги наведено нижче. Черга створюється за допомогою типу даних Queue. Ключове слово “new” використовується для створення об’єкта черги. Потім об’єкт присвоюється змінній qt.
Queue qt = new Queue()
Додавання елементів до черги
Метод enqueue використовується для додавання елемента в чергу. Загальний синтаксис оператора наведено нижче.
Queue.enqueue(element)
Видалення елементів з черги
Метод dequeue використовується для видалення елемента з черги. Операція видалення з черги поверне перший елемент черги. Загальний синтаксис оператора наведено нижче
Queue.dequeue()
Рахувати
Ця властивість використовується для отримання кількості елементів у черзі. Нижче наведено загальний синтаксис цього оператора.
Queue.Count
Містить
Цей метод використовується для перевірки наявності елемента в черзі. Нижче наведено загальний синтаксис цього оператора. Оператор поверне значення true, якщо елемент існує, інакше він поверне значення false.
Queue.Contains(element)
Тепер давайте подивимося, як це працює на рівні коду. Весь наведений нижче код буде записано в нашу консольну програму.
Код буде записаний у наш файл Program.cs. У наведеній нижче програмі ми напишемо код, щоб побачити, як ми можемо використовувати вищезгадані методи.
Приклад
У цьому прикладі Queue у C# ми побачимо, як створюється черга. Далі ми побачимо, як відображати елементи черги та використовувати методи Count і Contain.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Queue qt = new Queue(); qt.Enqueue(1); qt.Enqueue(2); qt.Enqueue(3); foreach (Object obj in qt) { Console.WriteLine(obj); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine("The number of elements in the Queue " + qt.Count); Console.WriteLine("Does the Queue contain " + qt.Contains(3)); Console.ReadKey(); } } }
Пояснення коду
- Перший крок використовується для оголошення черги. Тут ми оголошуємо qt як змінну для зберігання елементів нашої черги.
- Далі ми додаємо 3 елементи до нашої черги. Кожен елемент додається за допомогою методу “enqueue”.
- Тепер одна річ, яку слід зазначити про черги, полягає в тому, що до елементів неможливо отримати доступ через позицію індексу, як у список масивів. Нам потрібно використовувати інший підхід для відображення елементів черги. Отже, ось як ми будемо відображати елементи черги.
- Спочатку ми оголошуємо тимчасову змінну під назвою obj. Це буде використано для зберігання кожного елемента черги.
- Потім ми використовуємо оператор foreach для проходження кожного елемента черги.
- Для кожного елемента Queue значення присвоюється змінній obj.
- Потім ми використовуємо команду Console.Writeline, щоб відобразити значення на консолі.
- Ми використовуємо властивість «Count», щоб отримати кількість елементів у черзі. Ця властивість повертає число. Потім ми виводимо це значення на консоль.
- Потім ми використовуємо метод «Contains», щоб перевірити, чи присутнє значення 3 у нашій черзі. Це поверне значення true або false. Потім ми виводимо це повернуте значення на консоль.
Якщо наведений вище код введено належним чином і програма запущена, буде показано наступний результат.
Вихід
З результату ми чітко бачимо, що відображаються елементи черги. Зверніть увагу, що на відміну від "стек» у «черзі» першим відображається перший елемент, надісланий до черги. Кількість елементів черги також відображається у вихідних даних. Крім того, відображається значення True, яке означає, що значення 3 визначено в черзі.
C# Queue Вилучення з черги
Тепер розглянемо функцію видалення. Ми побачимо код, необхідний для видалення останнього елемента з черги.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Queue qt = new Queue(); qt.Enqueue(1); qt.Enqueue(2); qt.Enqueue(3); qt.Dequeue(); foreach (Object obj in qt) { Console.WriteLine(obj); } Console.ReadKey(); } } }
Пояснення коду
- Тут ми просто використовуємо метод «dequeue», який використовується для видалення елемента з черги. Цей метод видалить перший елемент черги.
Якщо наведений вище код введено належним чином і програма запущена, буде показано наступний результат.
вихід:
З результату ми бачимо, що перший елемент, який було додано до черги, а це був елемент 1, було видалено з черги.
Підсумки
Черга заснована на концепції «першим прийшов, першим вийшов». Операція додавання елемента в чергу називається операцією введення в чергу. Операція видалення елемента з черги називається операцією вилучення з черги.