Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

คลาส Queue ใน C# คืออะไร

ใช้คลาส Queue แสดงคอลเลกชันแบบ First-In First-Out (FIFO) การเพิ่ม = enqueue การลบ = dequeue

เมธอดสำคัญของ Queue

ลำดับเมธอดและคำอธิบาย
1Clear()
ลบสมาชิกทั้งหมด
2Contains(object obj)
ตรวจสอบว่ามีสมาชิกในคิวหรือไม่
3Dequeue()
ลบและคืนค่าสมาชิกต้นคิว
4Enqueue(object obj)
เพิ่มสมาชิกท้ายคิว
5ToArray()
คัดลอกคิวเป็นอาร์เรย์ใหม่

ตัวอย่าง Enqueue และ Dequeue

using System; 
using System.Collections; 
namespace Demo { 
    class Program { 
        static void Main(string[] args) { 
            Queue q = new Queue(); 
            q.Enqueue('A'); q.Enqueue('B'); q.Enqueue('C'); q.Enqueue('D'); 
            Console.WriteLine("Current queue: "); 
            foreach (char c in q) Console.Write(c + " "); 
            Console.WriteLine(); 
            q.Enqueue('E'); q.Enqueue('F'); q.Enqueue('G'); q.Enqueue('H'); 
            Console.WriteLine("Current queue: "); 
            foreach (char c in q) Console.Write(c + " "); 
            Console.WriteLine(); 
            Console.WriteLine("Removing some values "); 
            char ch = (char)q.Dequeue(); Console.WriteLine("Value removed: {0}", ch); 
            ch = (char)q.Dequeue(); Console.WriteLine("Value removed: {0}", ch); 
            Console.ReadKey(); 
        } 
    } 
}

ผลลัพธ์

Current queue: A B C D Current queue: A B C D E F G H Removing some values Value removed: A Value removed: B

เพิ่มด้วย Enqueue:

Queue q = new Queue(); q.Enqueue('A'); q.Enqueue('B'); q.Enqueue('C'); q.Enqueue('D');

ลบด้วย Dequeue:

char ch = (char)q.Dequeue(); Console.WriteLine("Value removed: {0}", ch);