Skip to content
Related Articles

Related Articles

Improve Article
C# | Create a Queue from another collection
  • Last Updated : 01 Feb, 2019

Queue represents a first-in, first out collection of object. It is used when you need a first-in, first-out access of items. When you add an item in the list, it is called enqueue, and when you remove an item, it is called deque. Queue.ToArray Method used to copy the Queue elements to a new array.

Properties :

  • Enqueue adds an element to the end of the Queue.
  • Dequeue removes the oldest element from the start of the Queue.
  • Peek returns the oldest element that is at the start of the Queue but does not remove it from the Queue.
  • The capacity of a Queue is the number of elements the Queue can hold.
  • As elements are added to a Queue, the capacity is automatically increased as required by reallocating the internal array.
  • Queue accepts null as a valid value for reference types and allows duplicate elements.

Syntax:

public T[] ToArray ();

Here T[] is a new array containing elements copied from the Queue.

Below given are some examples to understand the implementation in a better way :



Example 1:




// C# code to Create a Queue
// from a collection
using System;
using System.Collections.Generic;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a Queue of strings
        Queue<string> myQueue1 = new Queue<string>();
  
        // Inserting the elements into the Queue
        myQueue1.Enqueue("GeeksforGeeks");
        myQueue1.Enqueue("is");
        myQueue1.Enqueue("the");
        myQueue1.Enqueue("best");
        myQueue1.Enqueue("website");
  
        // Displaying the count of elements
        // contained in the myQueue1
        Console.Write("Total number of elements in the Queue 1 are : ");
  
        Console.WriteLine(myQueue1.Count);
  
        // Displaying the elements in Queue myQueue1
        foreach(string str in myQueue1)
        {
            Console.WriteLine(str);
        }
  
        // Creating a Queue from a collection
        Queue<string> myQueue2 = new Queue<string>(myQueue1.ToArray());
  
        // Displaying the count of elements
        // contained in the myQueue2
        Console.Write("Total number of elements in the Queue 2 are : ");
  
        Console.WriteLine(myQueue2.Count);
  
        // Displaying the elements in Queue myQueue2
        foreach(string str in myQueue2)
        {
            Console.WriteLine(str);
        }
    }
}
Output:
Total number of elements in the Queue 1 are : 5
GeeksforGeeks
is
the
best
website
Total number of elements in the Queue 2 are : 5
GeeksforGeeks
is
the
best
website

Example 2:




// C# code to Create a Queue
// from a collection
using System;
using System.Collections.Generic;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a Queue of Integers
        Queue<int> myQueue1 = new Queue<int>();
  
        // Inserting the elements into the Queue
        myQueue1.Enqueue(5);
        myQueue1.Enqueue(10);
        myQueue1.Enqueue(15);
        myQueue1.Enqueue(20);
        myQueue1.Enqueue(25);
  
        // Displaying the count of elements
        // contained in the myQueue1
        Console.Write("Total number of elements in the Queue 1 are : ");
  
        Console.WriteLine(myQueue1.Count);
  
        // Displaying the elements in Queue myQueue1
        foreach(int i in myQueue1)
        {
            Console.WriteLine(i);
        }
  
        // Creating a Queue from a collection
        Queue<int> myQueue2 = new Queue<int>(myQueue1.ToArray());
  
        // Displaying the count of elements
        // contained in the myQueue2
        Console.Write("Total number of elements in the Queue 2 are : ");
  
        Console.WriteLine(myQueue2.Count);
  
        // Displaying the elements in Queue myQueue2
        foreach(int i in myQueue2)
        {
            Console.WriteLine(i);
        }
    }
}
Output:
Total number of elements in the Queue 1 are : 5
5
10
15
20
25
Total number of elements in the Queue 2 are : 5
5
10
15
20
25

Reference:




My Personal Notes arrow_drop_up
Recommended Articles
Page :