Las colecciones Stack y Queue son dos tipos de colecciones que permiten el manejo de colecciones de datos secuenciales, veamos:
En el queue el primer elemento en entrar es el primero en salir (FIFO), veamos sus métodos
- Enqueue = Agrega un elemento a la cola
- Dequeue = Obtiene y elimina el siguiente método de la cola
- Peek = Obtiene pero no elimina el siguiente método de la cola
Veamos un ejemplo:
Imports System.Collections Module Module1 Sub Main() Dim Cola As New Queue Cola.Enqueue("Proceso_1") Cola.Enqueue("Proceso_2") Cola.Enqueue("Proceso_3") Cola.Enqueue("Proceso_4") Cola.Enqueue("Proceso_5") While Cola.Count > 0 Console.WriteLine(Cola.Dequeue()) End While Console.ReadKey() End Sub End Module |
En el stack el último elemento en entrar es el primero en salir (LIFO), veamos sus métodos
- Push = Agrega un elemento a la cola
- Pop = Obtiene y elimina el siguiente método de la cola
- Peek = Obtiene pero no elimina el siguiente método de la cola
Veamos un ejemplo:
Imports System.Collections Module Module1 Sub Main() Dim Pila As New Stack Pila.Push("Proceso_1") Pila.Push("Proceso_2") Pila.Push("Proceso_3") Pila.Push("Proceso_4") Pila.Push("Proceso_5") While Pila.Count > 0 Console.WriteLine(Pila.Pop()) End While Console.ReadKey() End Sub End Module |
Como podemos deducir de los ejemplos anteriores, el uso de ambas colecciones es bastante similar, la principal diferencia radica en el orden en el cual los elementos son extraídos.