位置:首頁 > 高級語言 > C#教學 > C# Queue類

C# Queue類

它代表了一種先入先出集合對象。當需要一個先入先出項的接入那麼可以使用它。當在列表中添加一個項目,它被稱為入隊,當你刪除一個項目,它被稱為出隊。

隊列類的方法和屬性

下表列出了一些Queue類的常用屬性:

屬性 描述
Count 獲取包含在Queue中的元素的數量

下表列出了一些隊列Queue 類的常用方法:

S.N 方法名稱及用途
1 public virtual void Clear(); 
從隊列中刪除所有元素
2 public virtual bool Contains( object obj ); 
確定一個元素是否在隊列中
3 public virtual object Dequeue();
移除並返回在隊列的開頭的對象
4 public virtual void Enqueue( object obj ); 
將對象添加到所述Queue的末端
5 public virtual object[] ToArray();
複製隊列到一個新的數組
6 public virtual void TrimToSize();
設置在隊列中的元素的實際數量

例子:

下麵的例子演示了使用隊列

using System;
using System.Collections;

namespace CollectionsApplication
{
   class Program
   {
      static void Main(string[] args)
      {
         Queue q = new Queue();

         q.Enqueue('A');
         q.Enqueue('M');
         q.Enqueue('G');
         q.Enqueue('W');
         
         Console.WriteLine("Current queue: ");
         foreach (char c in q)
            Console.Write(c + " ");
         Console.WriteLine();
         q.Enqueue('V');
         q.Enqueue('H');
         Console.WriteLine("Current queue: ");         
         foreach (char c in q)
            Console.Write(c + " ");
         Console.WriteLine();
         Console.WriteLine("Removing some values ");
         char ch = (char)q.Dequeue();
         Console.WriteLine("The removed value: {0}", ch);
         ch = (char)q.Dequeue();
         Console.WriteLine("The removed value: {0}", ch);
         Console.ReadKey();
      }
   }
}

當上述代碼被編譯和執行時,它產生了以下結果:

Current queue: 
A M G W 
Current queue: 
A M G W V H 
Removing values
The removed value: A
The removed value: M