Some people may think about data structure as the one of the hardest part in Computer Science but to be honest it is not hard at all, I know it can get kind of complicated but when you read about or imagine in real life example you will feel more familiarized with it.
I know you hear about queues but what is a queue in programming? Queue is a collection that is use to hold elements and provide various operations (methods ) that we will discuss later on, as in real life queue follows the same principle like when you go to a cashier it is called FIFO and stands for First-In-First-Out.
Java already provide an interface that allow you uses its operation but today we are going to discuss and figure out how it works.
First imagine queue as the picture below:

One of the most important method for queue is the insert () method, this method as it will increase the size of the queue by adding elements to it.
Also we have the method remove() which decreases the size of the queue by removing the first element that was added .
Another cool method is Peek() method,

peek() method is the one in charge of returning the element that is in front position of the queue
When we have a fixed size collection as array we have to make sure we don’t over populate it because it will give us indexOutBound error and we don’t want it, that ‘s why invoke isFull() method which return a boolean value as true if the queue is full or false if not full.
Another method that return a boolean is isEmpty(), which follows the same logic and returning true whether is empty or false if not.
Just in case we encounter and indexOutBound exception and we want to keep using the same queue or we are only using arrays as a collection we can go for a circular queue which one it reaches it maximum size value, the next value after that will overwrite the first value and so on, And example of circular queue is this.
As conclusion queue are very important in such our daily basis when we are buying stuff and waiting in a line to pay or as in programming where we are hold the data or ordered line of clients. If you want to know more about it implementations or about other data structures you can click here.