C#集合本质之队列的用法详解
作者:Darren?Ji 发布时间:2023-03-17 06:42:38
标签:C#,集合,本质,队列
队列和堆栈都是约束版的链表,就像在超市购物,队列是先进先出的数据结构。
接着上一篇,派生于链表类List,来模拟一个队列。
namespace LinkedListLibrary
{
public class QueueInheritance : List
{
public QueueInheritance() : base("queue"){}
//入队:到最后面
public void Enqueue(object dataValue)
{
InsertAtBack(dataValue);
}
//出队:在最前面删除
public object Dequeue()
{
return RemoveFromFront();
}
}
}
客户端调用。
public static void Main(string[] args)
{
QueueInheritance queue = new QueueInheritance();
bool aBoolean = true;
char aChar = 'a';
int anInt = 1;
string aStr = "hello";
queue.Enqueue(aBoolean);
queue.Display();
queue.Enqueue(aChar);
queue.Display();
queue.Enqueue(anInt);
queue.Display();
queue.Enqueue(aStr);
queue.Display();
object removedObject = null;
try
{
while (true)
{
removedObject = queue.Dequeue();
Console.WriteLine(removedObject + "出队列~~");
queue.Display();
}
}
catch (EmptyListException emptyListException)
{
Console.Error.WriteLine(emptyListException.StackTrace);
}
Console.ReadKey();
}
来源:https://www.cnblogs.com/darrenji/p/3890618.html


猜你喜欢
- 下面是一些我找到Android的ADB有用的命令。可以手动或使用自动构建和测试过程。查看设备adb devices如果多个设备连接则使用 u
- 本文实例讲述了WPF设置窗体可以使用鼠标拖动大小的方法。分享给大家供大家参考。具体实现方法如下:private void Window_Lo
- 对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)>(变量、初始化块)>构造器
- java 事务详解一、什么是事务事务是访问数据库的一个操作序列,数据库应用系统通过事务集来完成对数据库的存取。事务的正确执行使得数据库从一种
- 这篇文章主要介绍了springboot全局异常处理代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要
- 递归生成一个如图的菜单,编写两个类数据模型Menu、和创建树形的MenuTree。通过以下过程实现:1.首先从菜单数据中获取所有根节点。2.
- 1. 使用Files.list()迭代目录及其子目录文件Files.list()可以迭代目录及其子目录文件Files.list(Paths.
- 一、需求分析最近公司项目要实现一个需求要满足以下功能: 1)显示一个 list
- 进行GC性能调优时, 需要明确了解, 当前的GC行为对系统和用户有多大的影响。有多种监控GC的工具和方法, 本章将逐一介绍常用的工具。JVM
- AndroidStudio打包jar最近更新androidstudio之后发现打包jar不可用了。先看下以前的方法更新后新的用法//Copy
- 一般我们用它来自动帮我们注册APT文件(全称是Annotation Process Tool,或者叫注解处理器,AbstractProces
- 目录多开理论基础多开实现原理解析代码实现:多开包名代码实现:多用户总结多开理论基础app多开常用于做一些不合法的事情,如高羊毛,黑灰产,甚至
- 使用字典存储事件实例accessor-declarations 的一种用法是公开很多事件但不为每个事件分配字段,而是使用字典来存储这些事件实
- 本文实例为大家分享了Java实现动态数字时钟的具体代码,供大家参考,具体内容如下构建:Clock继承 JFrame 为运行页面ClockTe
- 程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能
- idea中ssm框架的编码问题介绍在idea中编码问题分为几个部分:1 tomcat服务器编码2 页面编码3 控制台编码4 操作系统编码在实
- 目录1、简介2、适用情况3、mybatis-plus前期准备(工程将以 H2 作为默认数据库进行演示)1、使用 Spring Initial
- 下面给大家介绍下mybatis结果生成键值对的实例代码,具体内容如下所示:在实际应用中我们经常会遇到这样的情况,需要给下拉框赋值,这个时候就
- 前言之所以会有这篇文章,是因为公司的开发环境比较老,寻找一些jar包的时候总是会纠结对应的编译版本,感觉很麻烦,所以写了一个工具类用于读取c
- 本文实例讲述了Java输入输出流。分享给大家供大家参考,具体如下:字节输出流,输出到文件中(写)OutputStream抽象类选好文件Fil