C#-এ Queue.Dequeue() মেথডটি Queue-এর শুরুতে (beginning) থাকা অবজেক্টটি সরিয়ে ফেলে এবং সেই অবজেক্টটি রিটার্ন করে। Queue FIFO (First In, First Out) নীতিতে কাজ করে।
সিনট্যাক্স (Syntax)
public virtual object Dequeue ();
উদাহরণ ১: জেনেরিক Queue-এ Dequeue() ব্যবহার
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
Queue<string> queue = new Queue<string>();
queue.Enqueue("A");
queue.Enqueue("B");
queue.Enqueue("C");
queue.Enqueue("D");
queue.Enqueue("E");
queue.Enqueue("F");
queue.Enqueue("G");
Console.WriteLine("Count of elements = " + queue.Count);
Console.WriteLine("Element at the beginning of queue = " + queue.Peek());
queue.Dequeue();
queue.Dequeue();
queue.Dequeue();
Console.WriteLine("Count of elements = " + queue.Count);
}
}
আউটপুট
Count of elements = 7 Element at the beginning of queue = A Count of elements = 4
উদাহরণ ২: একাধিক Dequeue() এবং Clear() ব্যবহার
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
Queue<string> queue = new Queue<string>();
queue.Enqueue("Gary");
queue.Enqueue("Jack");
queue.Enqueue("Ryan");
queue.Enqueue("Kevin");
queue.Enqueue("Mark");
queue.Enqueue("Jack");
queue.Enqueue("Ryan");
queue.Enqueue("Kevin");
Console.Write("Count of elements = ");
Console.WriteLine(queue.Count);
Console.WriteLine("Queue...");
foreach(string i in queue) {
Console.WriteLine(i);
}
queue.Dequeue();
queue.Dequeue();
Console.WriteLine("Queue...UPDATED");
foreach(string i in queue) {
Console.WriteLine(i);
}
Console.Write("Count of elements (updated) = " + queue.Count);
queue.Clear();
Console.Write("\nCount of elements (updated AGAIN) = ");
Console.WriteLine(queue.Count);
}
}
আউটপুট
Count of elements = 8 Queue... Gary Jack Ryan Kevin Mark Jack Ryan Kevin Queue...UPDATED Ryan Kevin Mark Jack Ryan Kevin Count of elements (updated) = 6 Count of elements (updated AGAIN) = 0
মূল পয়েন্টস
Dequeue()মেথড ফ্রন্ট (front) এলিমেন্টটি রিটার্ন করে এবং Queue থেকে সরিয়ে দেয়।- যদি Queue খালি থাকে,
Dequeue()কল করলেInvalidOperationExceptionথ্রো করে। Peek()মেথড শুধু ফ্রন্ট এলিমেন্টটি দেখায়, সরিয়ে দেয় না।- প্রতিটি
Dequeue()কলের পরCountপ্রপার্টি ১ করে কমে যায়। - জেনেরিক
Queue<T>ব্যবহার টাইপ সেফটি নিশ্চিত করে এবং বক্সিং/আনবক্সিং এড়ায়।