C#泛型集合之——队列与堆栈

Posted fangexuxiehuihuang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#泛型集合之——队列与堆栈相关的知识,希望对你有一定的参考价值。

队列与堆栈基础

队列 

1.操作:

 

(1)创建及初始化:

 

       Queue<类型> 队列名 =new Queue<类型>();//空队列,无元素

 

       Queue<类型> 队列名 =new Queue<类型>(数组名);

 

Queue<类型> 队列名 =new Queue<类型>()值 //队列未包含Add定义。这样是不行的!!!

 

(2)出入队:

 

       入队:队列名.Enqueue(值);

 

       出队:队列名.Dequeue(); //返回是队列类型的首元素值,也可直接出队,不获取值

 

(1)    不出队,但获取队首值:

 

类型 变量名 = 队列名.First();  //返回队首元素。如果无法判断第一个元素是否为空,可以用 FirstOrDefault来替换First 若为空,则null

 

(4)获取队列长度:队列名.Count();    //括号可加可不加

 

(5)判断某元素是否在队列中:队列名.Contains(元素);  //返回为boll型

 

(6)队列可以接受foreach循环

 

(7)将队列拷贝到数组中:类型 []数组名 =队列名.ToArray();

 

(8)清空队列:队列名.Clear();

 

堆栈

 

1.操作:堆栈与队列的相关操作大体相同,这里仅给出不同的进栈和弹栈。

 

(1)进栈:栈名.Push(元素值);

 

(2)弹栈:栈名.Pop(); //接收值也可不接收

 

(3)获取栈顶元素而不弹:类型 变量名= 栈名.Peek();

 

以上是关于C#泛型集合之——队列与堆栈的主要内容,如果未能解决你的问题,请参考以下文章

C#泛型集合之——列表

Java笔记-泛型与集合框架

C#泛型集合之——哈希集合

C#泛型集合之——链表

Stack集合与枚举泛型

C#高级语法之泛型泛型约束,类型安全逆变和协变(思想原理)