Wednesday, 21 June 2017

Queue

Queue is a data structure that supports first in first out (FIFO). Elements that are inserted first are extracted last.

Couple of important method for queue are
1. Enqueue: Add element to queue
2. Dequeue: Remove element from queue.

package queue;

import java.util.ArrayList;

public class Queue {
private ArrayList<Object> queue=new ArrayList<>();

public Queue() {
super();
}
/**
 * Add object to the queue
 * @param o
 */
public void enqueue(Object o){
queue.add(o);
System.out.println("Object added "+o);
}

/**
 * remove object from the queue. 
 * remove only if element is there is queue.
 */
public void dequeue(){
//check the size of the queue before removing element from queue
if(queue.size()>0){
System.out.println("Element removed "+queue.get(0));
queue.remove(0);
}
else{
System.out.println("Queue is empty");
}
}
}


Test Program

package queue;

public class MyQueue {

public static void main(String[] args) {
Queue queue=new Queue();
queue.dequeue();
queue.enqueue("A");
queue.enqueue("B");
queue.enqueue("C");
queue.dequeue();
queue.enqueue("D");
queue.enqueue("E");
queue.dequeue();
queue.dequeue();
queue.dequeue();
queue.dequeue();
queue.dequeue();

}

} 

Result

Queue is empty
Object added A
Object added B
Object added C
Element removed A
Object added D
Object added E
Element removed B
Element removed C
Element removed D
Element removed E
Queue is empty

No comments:

Post a Comment

Streaming with Kafka API

The Kafka Streams API is a Java library for building real-time applications and microservices that efficiently process and analyze large-sca...