Dominando Queues en C#: Enqueue, Dequeue y Operaciones Primero-En-Entrar-Primero-En-Salir Explicadas
¿Qué es una Cola (Queue) en C#?
Una Queue implementa el principio Primero-En-Entrar-Primero-En-Salir (FIFO), muy parecido a una fila de gente esperando un autobús. El primer elemento añadido es el primero en ser procesado o eliminado.
En C#, las colas se definen en el namespace System.Collections y ofrecen métodos como Enqueue y Dequeue que reflejan el comportamiento de colas del mundo real.
Declarar una Cola
Instancie una cola usando el tipo Queue y la palabra clave new:
Queue qt = new Queue();
Añadir Elementos (Enqueue)
Use Enqueue para añadir un item al final de la cola:
qt.Enqueue(1);
Eliminar Elementos (Dequeue)
El método Dequeue elimina y devuelve el item al frente de la cola:
var primero = qt.Dequeue();
Propiedades y Métodos Útiles
- Count – devuelve el número de items almacenados actualmente.
int total = qt.Count;
- Contains – comprueba si un valor específico existe en la cola.
bool tieneTres = qt.Contains(3);
Ejemplo Práctico
La siguiente aplicación de consola demuestra creación de cola, iteración y uso de Count y Contains:
using System; using System.Collections; namespace DemoApplication { class Program { static void Main(string[] args) { Queue qt = new Queue(); qt.Enqueue(1); qt.Enqueue(2); qt.Enqueue(3); foreach (Object obj in qt) { Console.WriteLine(obj); } Console.WriteLine(); Console.WriteLine("Total items: " + qt.Count); Console.WriteLine("¿Contiene 3? " + qt.Contains(3)); Console.ReadKey(); } } } Salida:
Eliminar el Primer Elemento
Llamar a Dequeue elimina el elemento encolado más temprano. El siguiente snippet muestra el efecto:
qt.Dequeue(); foreach (Object obj in qt) { Console.WriteLine(obj); } Resultado:
Resumen
Una Queue en C# se adhiere a semántica FIFO. Use Enqueue para añadir items, Dequeue para eliminar el item frontal, y propiedades como Count y métodos como Contains para inspeccionar la cola.
Lenguaje C
- Software de Mantenimiento Preventivo Explicado: Características, Beneficios y Guía de Implementación
- Curva P-F explicada: dominando el mantenimiento centrado en fiabilidad
- Mantenimiento por Avería Explicado: Respuesta Rápida y Control de Costos
- Explorando 6G: El Futuro de la Conectividad Ultra-Rápida
- Brasado de cobre explicado: Técnicas y consejos para uniones fuertes y fiables
- MQTT en Automatización Industrial: Guía Práctica para Fabricantes
- Microcontroladores PIC18: Características, Rendimiento y Cómo Usarlos
- Entendiendo Designadores de Referencia: Cómo Etiquetar Conexiones en Ensamblaje PCB
- Expresiones, sentencias y bloques en C#: Guía completa con ejemplos prácticos
- Dominando Herencia y Polimorfismo en C#: Ejemplos de Código Prácticos
- Dominando el método compareTo() de Java String: Sintaxis, casos de uso y ejemplos prácticos