C#中的队列(Queue)是一种先进先出(FIFO)的数据结构,它允许我们存储和操作一组元素。队列在许多场景中都非常有用,例如任务调度、消息传递和缓冲处理等。
在C#中,我们可以使用System.Collections.Queue
类来实现队列。以下是一些常见的队列操作:
- 创建队列:
Queue myQueue = new Queue();
- 添加元素到队列:
myQueue.Enqueue("apple"); myQueue.Enqueue("banana"); myQueue.Enqueue("orange");
- 从队列中移除元素:
string item = myQueue.Dequeue();
- 查看队列头部元素:
string frontItem = myQueue.Peek();
- 检查队列是否为空:
bool isEmpty = myQueue.Count == 0;
- 获取队列中的元素数量:
int count = myQueue.Count;
- 清空队列:
myQueue.Clear();
- 遍历队列中的所有元素:
foreach (string item in myQueue) { Console.WriteLine(item); }
下面是一个简单的示例,演示了如何使用队列来模拟一个简单的任务调度系统:
using System; using System.Collections.Queue; class Program { static void Main() { Queue taskQueue = new Queue(); // 添加任务到队列 taskQueue.Enqueue("Task 1"); taskQueue.Enqueue("Task 2"); taskQueue.Enqueue("Task 3"); // 处理队列中的任务 while (!taskQueue.IsEmpty()) { string task = taskQueue.Dequeue(); Console.WriteLine("Processing task: " + task); } } }
输出:
Processing task: Task 1 Processing task: Task 2 Processing task: Task 3