Looking for .net Keywords? Try Ask4Keywords

.NET Framework Очередь


пример

В .Net используется коллекция для управления значениями в Queue , использующей концепцию FIFO (first-in first-out) . Enqueue(T item) очередей является метод Enqueue(T item) который используется для добавления элементов в очередь и Dequeue() который используется для получения первого элемента и удаления его из очереди. Общая версия может использоваться как следующий код для очереди строк.

Сначала добавьте пространство имен:

using System.Collections.Generic;

и использовать его:

Queue<string> queue = new Queue<string>();
queue.Enqueue("John");
queue.Enqueue("Paul");
queue.Enqueue("George");
queue.Enqueue("Ringo");

string dequeueValue;
dequeueValue = queue.Dequeue(); // return John
dequeueValue = queue.Dequeue(); // return Paul
dequeueValue = queue.Dequeue(); // return George
dequeueValue = queue.Dequeue(); // return Ringo

Существует не общий вариант типа, который работает с объектами.

Пространство имен:

using System.Collections;

Добавьте образец кода для не общей очереди:

Queue queue = new Queue();
queue.Enqueue("Hello World"); // string
queue.Enqueue(5); // int
queue.Enqueue(1d); // double
queue.Enqueue(true); // bool
queue.Enqueue(new Product()); // Product object

object dequeueValue;
dequeueValue = queue.Dequeue(); // return Hello World (string)
dequeueValue = queue.Dequeue(); // return 5 (int)
dequeueValue = queue.Dequeue(); // return 1d (double)
dequeueValue = queue.Dequeue(); // return true (bool)
dequeueValue = queue.Dequeue(); // return Product (Product type)

Существует также метод Peek (), который возвращает объект в начале очереди, не удаляя его.

Queue<int> queue = new Queue<int>();
queue.Enqueue(10);
queue.Enqueue(20);
queue.Enqueue(30);
queue.Enqueue(40);
queue.Enqueue(50);

foreach (int element in queue)
{
    Console.WriteLine(i);
}

Выход (без снятия):

10
20
30
40
50