Simple Queue Example in Java
On this page (9sections)
Introduction
Simple Queue is a classic Java console program that demonstrates the concept with complete source code and sample output. Classic data structures such as stack, queue and linked list implemented in Java.
This tutorial walks through the program line by line, explains how the logic works, and highlights best practices you can apply in your own code.
Definition
In a billing counter, the customer or object at the front of the line was the first one to enter, while at the end of the line is the last to have entered. Every time a customer finishes paying for their items (or person steps off the escalator or the machine part is removed from the assembly line, etc.) that object leaves the queue from the front. This represents the queue/dequeue function. Every time another object or customer enters the line to wait, they join the end of the line and represent the ?enqueue? function. The queue.size a function would return the length of the line, and the empty a function would return true only if there was nothing in the line.
Example Program
import java.util.*;
public class QueueExample {
public static void main(String[] args) {
Queue<String> locationsQueue = new LinkedList<>();
locationsQueue.add("Chennai");
locationsQueue.add("Mumbai");
locationsQueue.add("Hyderabad");
locationsQueue.add("Lucknow");
locationsQueue.add("Bengaluru");
System.out.println("Queue is : " + locationsQueue);
System.out.println("Head of Queue : " + locationsQueue.peek());
locationsQueue.remove();
System.out.println("After removing Head of Queue : " + locationsQueue);
System.out.println("Size of Queue : " + locationsQueue.size());
}
}
Sample Output
Queue is : [Chennai, Mumbai, Hyderabad, Lucknow, Bengaluru]
Head of Queue : Chennai
After removing Head of Queue : [Mumbai, Hyderabad, Lucknow, Bengaluru]
Size of Queue : 4
When to use
Use this simple queue example when learning or revising core Java syntax.
How it works
-
Execution begins in the
mainmethod — the JVM calls this method when you run the class. -
import java.util.*;imports a class used later in the program. -
Queue<String> locationsQueue = new LinkedList<>();updates a variable used in the calculation or output. -
A
println/printcall writes text to the console — part of the sample output below. -
A
println/printcall writes text to the console — part of the sample output below. -
A
println/printcall writes text to the console — part of the sample output below. -
A
println/printcall writes text to the console — part of the sample output below. -
Compare your console output with the sample output for Simple Queue to confirm the program behaves correctly.
Best Practices
- Use meaningful variable and class names that describe their purpose.
- Compile and run the program locally — modify values to see how output changes.
- Read compiler errors carefully; they usually point to the exact line to fix.
Common Mistakes
- Copying code without understanding each line — practice by changing one statement at a time.
- Mismatching the public class name and the
.javafilename. - Forgetting semicolons at the end of statements.