Queueクラスでは、EnqueueメソッドでQueueに対して要素の追加(プッシュ操作)、DequeueメソッドでQueueからの要素の取り出し(ポップ操作)を行います。
次の例では、3つの要素をQueueにエンキューし、その後Queueが空になるまでデキューしています。 キューでは一番最初に入れた要素は一番始めに取り出される(First-In, First-Out)という特性上、要素を入れた順番と同じ順番で表示されている点に注目してください。
EnqueueメソッドでQueueに要素を追加する・DequeueメソッドでQueueから要素を取り出す
using System;
using System.Collections.Generic;
class Sample {
static void Main()
{
var q = new Queue<string>();
// Queueに要素をEnqueue
q.Enqueue("Alice");
q.Enqueue("Bob");
q.Enqueue("Charlie");
// Queueが空になるまで内容をDequeue
while (0 < q.Count) {
Console.WriteLine(q.Dequeue());
}
}
}
実行結果
Alice Bob Charlie
Queueでもforeachによる列挙操作を行うことができます。 Queueの内容をforeachで列挙すると、Enqueueしたのと同じ順序、Dequeueする場合と同じ順序で要素が列挙されます。