C#队列Queue用法实例分析
本文向大家介绍C#队列Queue用法实例分析,包括了C#队列Queue用法实例分析的使用技巧和注意事项,需要的朋友参考一下
本文实例分析了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#程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#yiidian.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。