ใช้คลาส Queue แสดงคอลเลกชันแบบ First-In First-Out (FIFO) การเพิ่ม = enqueue การลบ = dequeue
เมธอดสำคัญของ Queue
| ลำดับ | เมธอดและคำอธิบาย |
|---|---|
| 1 | Clear() ลบสมาชิกทั้งหมด |
| 2 | Contains(object obj) ตรวจสอบว่ามีสมาชิกในคิวหรือไม่ |
| 3 | Dequeue() ลบและคืนค่าสมาชิกต้นคิว |
| 4 | Enqueue(object obj) เพิ่มสมาชิกท้ายคิว |
| 5 | ToArray() คัดลอกคิวเป็นอาร์เรย์ใหม่ |
ตัวอย่าง 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);