队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。
就如我们现实生活中排队一样, 队头的人可以离开 , 队尾可以加人( 想要进入队列 不能插队)
public interface Queue<E> extends Collection<E> {
boolean add(E e);
boolean offer(E e);
E remove();
E poll();
E element();
E peek();
以上是Queue的源码
LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用
import java.util.LinkedList;
import java.util.Queue;
public class QueueTest {
public static void main(String[] args) {
Queue<Integer> queue=new LinkedList<>();
queue.add(2); //插入元素
queue.offer(3);
queue.offer(6); //插入元素
System.out.println(queue);
Integer element = queue.element(); // 返回 队头元素 但是不移除
System.out.println(element+" 我是element");
System.out.println(queue);
Integer peek = queue.peek(); // 返回 队头元素 但是不移除
System.out.println(peek+" 我是peek");
System.out.println(queue);
Integer poll = queue.poll(); // 返回 队头元素 但是移除
System.out.println(poll+" 我是pool");
System.out.println(queue);
Integer remove = queue.remove(); // 返回 队头元素 但是移除
System.out.println(remove+" 我是remove");
System.out.println(queue);
}
}