La cola representa unacolección de objetos de tipo primero en entrar, primero en salir . Se utiliza cuando necesita un acceso de elementos por orden de entrada. Cuando agrega un elemento en la lista, se llama poner en cola , y cuando elimina un elemento, se llama quitar de la cola . Esta clase se incluye en elnombres System.Collections e implementa las interfaces ICollection, IEnumerable e ICloneable .
Características de la clase de cola:
- Enqueue agrega un elemento al final de la cola.
- Dequeue elimina el elemento más antiguo del inicio de la cola.
- Peek devuelve el elemento más antiguo que está al comienzo de la Cola pero no lo elimina de la Cola.
- La capacidad de una Cola es el número de elementos que la Cola puede contener.
- A medida que se agregan elementos a una cola, la capacidad aumenta automáticamente según sea necesario mediante la reasignación de la array interna.
- Queue acepta nulo como un valor válido para los tipos de referencia y permite elementos duplicados.
Constructores
Constructor | Descripción |
---|---|
Cola() | Inicializa una nueva instancia de la clase Queue que está vacía, tiene la capacidad inicial predeterminada y usa el factor de crecimiento predeterminado. |
Cola (IColección) | Inicializa una nueva instancia de la clase Queue que contiene elementos copiados de la colección especificada, tiene la misma capacidad inicial que el número de elementos copiados y usa el factor de crecimiento predeterminado. |
Cola (Int32) | Inicializa una nueva instancia de la clase Queue que está vacía, tiene la capacidad inicial especificada y usa el factor de crecimiento predeterminado. |
Cola (Int32, Único) | Inicializa una nueva instancia de la clase Queue que está vacía, tiene la capacidad inicial especificada y usa el factor de crecimiento especificado. |
Ejemplo:
// C# code to create a Queue using System; using System.Collections; class GFG { // Driver code public static void Main() { // Creating a Queue Queue myQueue = new Queue(); // Inserting the elements into the Queue myQueue.Enqueue("one"); // Displaying the count of elements // contained in the Queue Console.Write("Total number of elements in the Queue are : "); Console.WriteLine(myQueue.Count); myQueue.Enqueue("two"); // Displaying the count of elements // contained in the Queue Console.Write("Total number of elements in the Queue are : "); Console.WriteLine(myQueue.Count); myQueue.Enqueue("three"); // Displaying the count of elements // contained in the Queue Console.Write("Total number of elements in the Queue are : "); Console.WriteLine(myQueue.Count); myQueue.Enqueue("four"); // Displaying the count of elements // contained in the Queue Console.Write("Total number of elements in the Queue are : "); Console.WriteLine(myQueue.Count); myQueue.Enqueue("five"); // Displaying the count of elements // contained in the Queue Console.Write("Total number of elements in the Queue are : "); Console.WriteLine(myQueue.Count); myQueue.Enqueue("six"); // Displaying the count of elements // contained in the Queue Console.Write("Total number of elements in the Queue are : "); Console.WriteLine(myQueue.Count); } }
Producción:
Total number of elements in the Queue are : 1 Total number of elements in the Queue are : 2 Total number of elements in the Queue are : 3 Total number of elements in the Queue are : 4 Total number of elements in the Queue are : 5 Total number of elements in the Queue are : 6
Propiedades
Propiedad | Descripción |
---|---|
Contar | Obtiene el número de elementos contenidos en la Cola. |
Está sincronizado | Obtiene un valor que indica si el acceso a la cola está sincronizado (seguro para subprocesos). |
SyncRoot | Obtiene un objeto que se puede usar para sincronizar el acceso a la cola. |
Ejemplo:
// C# code to Get the number of // elements contained in the Queue using System; using System.Collections; class GFG { // Driver code public static void Main() { // Creating a Queue Queue myQueue = new Queue(); // Inserting the elements into the Queue myQueue.Enqueue("Chandigarh"); myQueue.Enqueue("Delhi"); myQueue.Enqueue("Noida"); myQueue.Enqueue("Himachal"); myQueue.Enqueue("Punjab"); myQueue.Enqueue("Jammu"); // Displaying the count of elements // contained in the Queue Console.Write("Total number of elements in the Queue are : "); Console.WriteLine(myQueue.Count); } }
Producción:
Total number of elements in the Queue are : 6
Métodos
Método | Descripción |
---|---|
Claro() | Elimina todos los objetos de la cola. |
Clon() | Crea una copia superficial de la cola. |
Contiene (Objeto) | Determina si un elemento está en la cola. |
Copiar a (array, Int32) | Copia los elementos de la cola en una array unidimensional existente, comenzando en el índice de array especificado. |
Quitar de la cola() | Elimina y devuelve el objeto al principio de la cola. |
Poner en cola (Objeto) | Agrega un objeto al final de la cola. |
Es igual a (Objeto) | Determina si el objeto especificado es igual al objeto actual. |
ObtenerEnumerador() | Devuelve un enumerador que itera a través de la cola. |
Obtener código hash() | Sirve como la función hash predeterminada. |
ObtenerTipo() | Obtiene el Tipo de la instancia actual. |
MemberwiseClone() | Crea una copia superficial del objeto actual. |
Ojeada() | Devuelve el objeto al principio de la Cola sin eliminarlo. |
Sincronizado (Cola) | Devuelve una nueva cola que envuelve la cola original y es segura para subprocesos. |
AArray() | Copia los elementos de la cola en una nueva array. |
Enstringr() | Devuelve una string que representa el objeto actual. |
RecortarAlTamaño() | Establece la capacidad en el número real de elementos en la cola. |
Ejemplo 1:
// C# code to Check if a Queue // contains an element using System; using System.Collections; class GFG { // Driver code public static void Main() { // Creating a Queue Queue myQueue = new Queue(); // Inserting the elements into the Queue myQueue.Enqueue(5); myQueue.Enqueue(10); myQueue.Enqueue(15); myQueue.Enqueue(20); myQueue.Enqueue(25); // Checking whether the element is // present in the Queue or not // The function returns True if the // element is present in the Queue, else // returns False Console.WriteLine(myQueue.Contains(7)); } }
Producción:
False
Ejemplo 2:
// C# code to Convert Queue to array using System; using System.Collections; class GFG { // Driver code public static void Main() { // Creating a Queue Queue myQueue = new Queue(); // Inserting the elements into the Queue myQueue.Enqueue("Geeks"); myQueue.Enqueue("Geeks Classes"); myQueue.Enqueue("Noida"); myQueue.Enqueue("Data Structures"); myQueue.Enqueue("GeeksforGeeks"); // Converting the Queue // into object array Object[] arr = myQueue.ToArray(); // Displaying the elements in array foreach(Object obj in arr) { Console.WriteLine(obj); } } }
Producción:
Geeks Geeks Classes Noida Data Structures GeeksforGeeks
Referencia:
Publicación traducida automáticamente
Artículo escrito por Sahil_Bansall y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA