Skip to content

Queue Class Documentation ​

The Queue<T> class represents a first-in-first-out (FIFO) collection of items. It provides methods for adding, accessing, and removing elements, as well as clearing the entire queue.

Type Parameters ​

  • T: The type of elements in the queue.

Public Methods ​

Enqueue ​

Adds an element to the end of the queue.

Syntax ​

vein
queueInstance.Enqueue(value);

Parameters ​

  • value (T): The element to add to the queue.

Example ​

vein
auto queue = new Queue<number>();
queue.Enqueue(1);
queue.Enqueue(2);
queue.Enqueue(3);

Dequeue ​

Removes and returns the element at the beginning of the queue.

Syntax ​

vein
auto removedElement = queueInstance.Dequeue();

Returns ​

  • T: The element removed from the beginning of the queue.

Example ​

vein
auto removedElement = queue.Dequeue(); // removedElement is 1

Clear ​

Removes all elements from the queue.

Syntax ​

vein
queueInstance.Clear();

Example ​

vein
queue.Clear(); // queue is now empty

Examples ​

Basic Usage ​

Creating a Queue and Performing Operations ​

vein
// Creating a new queue of numbers
auto numberQueue = new Queue<number>();

// Enqueuing elements
numberQueue.Enqueue(1);
numberQueue.Enqueue(2);
numberQueue.Enqueue(3);

// Dequeuing an element
Out.println(numberQueue.Dequeue()); // Output: 1

// Clearing the queue
numberQueue.Clear();

Using a Queue with Custom Objects ​

vein
class Person {
    new(name: string, age: i32) {}
}

// Creating a new queue of Person objects
auto personQueue = new Queue<Person>();

// Enqueuing new Person objects
personQueue.Enqueue(new Person("Alice", 30));
personQueue.Enqueue(new Person("Bob", 25));

// Dequeuing a Person object
auto dequeuedPerson = personQueue.Dequeue();
Out.println(dequeuedPerson.name); // Output: Alice

// Clearing the queue
personQueue.Clear();

Conclusion ​

The Queue<T> class is a versatile and straightforward collection for handling elements in a FIFO order. By making use of its methods, you can efficiently manage collections where the order of insertion and removal is significant.