C#队列
一、基本概念:
队列是元素先进先出的方式(FIFO)来处理的集合,类似于排队。先进入的元素先读取,后进入的元素后读取。
二、命名空间:
队列在System.Collections.Generic命名空间中可以找到。其名为Queue,泛型的为Queue<T>。
在内部它使用的是T类型的数组,继承ICollection和IEnumerable<T>接口,但没有继承ICollection<T>接口,因为Add()和Remove()方法均不可应用在队列上。也没有继承IList<T>接口,因为他不能用索引器访问队列。
三、入队和出队
入队用Enqueue()方法进行入队,出队用Dequeue()方法进行出队。
出队使会读取并删除当前元素。
四、Queue<T>常用的几种方法
namespace System.Collections.Generic
{
// 摘要:
// 表示对象的先进先出集合。
//
// 类型参数:
// T:
// 指定队列中元素的类型。
[Serializable]
[ComVisible(false)]
[DebuggerDisplay("Count = {Count}")]
[DebuggerTypeProxy(typeof(System_QueueDebugView<>))]
public class Queue<T> : IEnumerable<T>, ICollection, IEnumerable
{
// 摘要:
// 初始化 System.Collections.Generic.Queue<T> 类的新实例,该实例为空并且具有默认初始容量。
public Queue();
//
// 摘要:
// 初始化 System.Collections.Generic.Queue<T> 类的新实例,该实例包含从指定集合复制的元素并且具有足够的容量来容纳所复制的元素。
//
// 参数:
// collection:
// 其元素被复制到新的 System.Collections.Generic.Queue<T> 中的集合。
//
// 异常:
// System.ArgumentNullException:
// collection 为 null。
public Queue(IEnumerable<T> collection);
//
// 摘要:
// 初始化 System.Collections.Generic.Queue<T> 类的新实例,该实例为空并且具有指定的初始容量。
//
// 参数:
// capacity:
// System.Collections.Generic.Queue<T> 可包含的初始元素数。
//
// 异常: </