C#队列Queue用法实例分析

前端技术 2023/09/05 C#

本文实例分析了C#队列Queue用法。分享给大家供大家参考。具体分析如下:

队列(Queue)在程序设计中扮演着重要的角色,因为它可以模拟队列的数据操作。例如,排队买票就是一个队列操作,后来的人排在后面,先来的人排在前面,并且买票请求先被处理。为了模拟队列的操作,Queue在ArrayList的基础上加入了以下限制

1.元素采用先入先出机制(FIFO,First In First Out),即先进入队列的元素必须先离开队列。最先进入的元素称为队头元素。

元素只能被添加到队尾(称为入队),不允许在中间的某个位置插入。也就是说,不支持ArrayList中的Insert方法

2.只有队头的元素才能被删除(称为出队),不允许直接对队列中的非队头元素进行删除,从而保证FIFO机制。也就是说,不支持ArrayList中的Remove方法。

3.不允许直接对队列中非队头元素进行访问。也就是说,不支持ArrayList中的索引访问,只允许遍历访问

注意:

Queue.Enqueue (object):向Queue中入队一个对象元素。
Queue.Dequeue ():从Queue中出队一个对象元素,并将此元素返回。


举例:

private void button_测试Queue_Click(object sender, EventArgs e)
{
 string[] cars = new string[]{\"宝马\",\"奔驰\",\"奥迪\",\"东风\",\"劳斯莱斯\"};
 Console.WriteLine(\"开始入队列\");
 Queue<string> que = new Queue<string>();
 foreach (string str in cars)
 {
  que.Enqueue(str);
  Console.WriteLine(\"入队列-{0}\",str);
 }
 Console.WriteLine();
 //打印队列
 PrintQueue(que);
 Console.WriteLine();
 Console.WriteLine(\"开始出队列\");
 while (que.Count > 0)
 {
  string str = que.Dequeue();
  Console.WriteLine(\"出队列-{0}\", str);
 }
}
private void PrintQueue(Queue<string> list)
{
 Console.WriteLine(\"开始打印队列\");
 foreach (string str in list)
 {
  Console.WriteLine(str);
 }
}

运行结果如下图所示:

希望本文所述对大家的C#程序设计有所帮助。

本文地址:https://www.stayed.cn/item/13256

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。