Ir al contenido principal

Queue (Cola) en C#

La cola (Queue), tiene el comportamiento contrario a la pila. Todo nuevo elemento se agrega al principio de la colección y solo se puede extraer el ultimo elemento. Por esta razón, la cola se conoce como una colección FIFO (Fisrt Input First Output) ya que el primer elemento que ingresa a la cola es el primer elemento que sale. Para recordar este comportamiento se puede asociar la Queue con la fila que se debe hacer en un banco para realizar una consignación. En ese caso, el cajero atiende en el orden en que llegan las personas a la cola.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;// necesario para poder declarar un "Queue"

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Queue cola = new Queue();//instancio un nuevo objeto Queue(Cola)

            cola.Enqueue("Perro");//agrego un elemento a la cola
            cola.Enqueue("Gato");
            cola.Enqueue("Loro");
            cola.Enqueue("Tigre");
            cola.Enqueue("Leon");
            cola.Enqueue("Lobo");
            cola.Enqueue("Zorro");
            cola.Enqueue("Conejo");
         

            for (int i = 0; i < 3; i++)//itera 3 veces para ir retirando elementos de la cola
            {              
                Console.WriteLine("Elementos totales que se encuentran en la cola: " + cola.Count);//.count cuenta la cantidad de elementos en la cola
                Console.WriteLine("");
              
                Console.WriteLine("Elemento retirado de la cola: " +cola.Dequeue());//.dequeue() retira un elemento de la cola
                Console.WriteLine("el proximo elemento que queda en la cola es: " +cola.Peek());//.peek() muestra el proximo elemento de la cola, sin retirarlo
                Console.WriteLine("");
                Console.WriteLine("");
            }
          
            Console.WriteLine("Elementos totales que se encuentran en la cola: " + cola.Count);                      
            Console.ReadKey();
        }
    }
}

Saludos y espero entiendan esta breve explicación del Queue, cualquier cosa que no logren entender, no duden en preguntar en nuestro twitter o facebook que se encuentra en el costado de esta pagina.