C#中队列方法和示例

C#中的Queue类是对象的先进先出集合。让我们看看C#中Queue类的一些方法-

序号方法与说明
1Clear()
从Queue <T>中删除所有对象。
2Contains(T)
确定元素是否在Queue <T>中。
3CopyTo(T [],Int32)
从指定的数组索引开始,将Queue> T <元素复制到现有的一维数组。
4Dequeue()
移除并返回Queue <T>开头的对象。
5Enqueue(T)
将一个对象添加到Queue <T>的末尾。
6Equals(Object)
确定指定的对象是否等于当前的对象。(从Object继承)
7GetEnumerator()
返回遍历Queue <T>的枚举数
8GetHashCode()
用作默认哈希函数。(继承自Object)
9GetType()
获取当前实例的类型。

示例

现在让我们看一些例子-

要在队列的开始处获取对象,代码如下-

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main() {
      Queue<string> queue = new Queue<string>();
      queue.Enqueue("A");
      queue.Enqueue("B");
      queue.Enqueue("C");
      queue.Enqueue("D");
      queue.Enqueue("E");
      queue.Enqueue("F");
      queue.Enqueue("G");
      Console.WriteLine("Count of elements = "+queue.Count);
      Console.WriteLine("Element at the beginning of queue = " + queue.Peek());
   }
}

输出结果

这将产生以下输出-

Count of elements = 7
Element at the beginning of queue = A

要从队列中删除所有对象,代码如下-

示例

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main() {
      Queue<string> queue = new Queue<string>();
      queue.Enqueue("Gary");
      queue.Enqueue("Jack");
      queue.Enqueue("Ryan");
      queue.Enqueue("Kevin");
      queue.Enqueue("Mark");
      queue.Enqueue("Jack");
      queue.Enqueue("Ryan");
      queue.Enqueue("Kevin");
      Console.Write("Count of elements = ");
      Console.WriteLine(queue.Count);
      queue.Clear();
      Console.Write("Count of elements (updated) = ");
      Console.WriteLine(queue.Count);
   }
}

输出结果

这将产生以下输出-

Count of elements = 8
Count of elements (updated) = 0