Queue Interface en Java
Queue<E> extiende desde Collection<E> y agrega algunos metodos utiles especializados para trabajar con colas:
- boolean offer(E e). Inserts an element inside the Queue immediately as long as it doesnt violate queue length restrictions. Returns true or false based on the result of the operation.
- E remove(). Devuelve y remueve el primer elemento de esta cola, tira NoSuchElemetnExceptin si la cola esta vacia.
- E poll(). Devuelve y remuve el primer elemento de esta cola, o devuelve null si la cola esta vacia.
- E element(). Devuelve pero no remueve el primer elemento de esta cola, tira NoSuchElementException si la cola esta vacia.
- E peek(). Devuelve pero no remueve el primer elemento de esta cola, devuelve null si la cola esta vacia
Tiene metodos bastante similares a los de Collections, sin embargo, estos son mas especializados y utilizados en las Queues, debido a que, por ejemplo, add(E e) tira IllegalStateException si no hay espacio, por otro lado offer(E e) solo devuelve un boolean.