C#队列Queue用法实例分析

作者:永远爱好写程序 时间:2023-02-27 22:35:14 

本文实例分析了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#队列Queue用法实例分析

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

标签:C#,队列,Queue
0
投稿

猜你喜欢

  • C#使用游标实现补间函数

    2021-10-13 21:59:35
  • C#在DataTable中根据条件删除某一行的实现方法

    2022-03-09 05:34:19
  • java跟踪执行的sql语句示例分享

    2022-07-30 20:13:18
  • Java8简单了解Lambda表达式与函数式接口

    2022-11-07 00:22:31
  • Swagger实现动态条件注入与全局拦截功能详细流程

    2023-11-23 13:41:05
  • Java经典用法总结(二)

    2023-11-24 20:39:10
  • C#面向对象编程之猜拳游戏实现方法

    2021-11-17 23:25:52
  • java后台实现支付宝对账功能的示例代码

    2021-10-29 22:15:29
  • Android在类微信程序中实现蓝牙聊天功能的示例代码

    2023-09-07 06:36:19
  • Android提高之MediaPlayer音视频播放

    2021-05-29 08:44:37
  • 不规范使用ThreadLocal导致bug分析解决

    2023-11-24 20:03:59
  • java中抽象类和接口的相同和不同点介绍

    2021-05-30 04:53:31
  • Android开发实现的计时器功能示例

    2023-09-04 07:33:33
  • Java多线程同步工具类CyclicBarrier的使用

    2021-08-26 05:29:53
  • C#创建安全的栈(Stack)存储结构

    2021-11-21 08:01:33
  • Sharding-Proxy基本功能用法介绍

    2021-10-17 06:41:03
  • Mybatis如何获取最新插入数据的id

    2023-02-26 08:15:20
  • Java中Function的使用及说明

    2023-08-12 03:04:29
  • 全面详解Maven打包及其相关插件和高级特性

    2022-03-03 21:10:00
  • Android手势识别功能

    2022-07-23 22:04:26
  • asp之家 软件编程 m.aspxhome.com