一、Queue接口概述
1、Queue 是一个接口,Queue 接口定义的是一个队列,它包含队列的基本操作:入队(enqueue)和出队(dequeue)。
2、队列是一种先进先出(后进后出)的数据结构,类似生活中的排队一样。
3、
二、Queue 结构
1、Queue 接口的声明
1 public interface Queue<E> extends Collection<E> {}
2、Queue 的继承结构及常用子类
3、Queue 接口定义的方法
Queue 接口没有定义过多的东西,只定义了六个方法,根据操作可以分为三类:入队、出队和遍历。
(1)入队:add() 和 offer()
二者区别在于:当队列空间已满无法入队时,
add()方法会抛出异常;
offer()方法会返回 false;
(2)出队:remove() 和 poll()
二者区别在于:当队列为空时,
remove() 方法会抛出异常;
poll() 方法会返回 null;
(3)遍历:element() 和 peek()
element() 和 peek() 都表示检索但不移除头部元素,可用于从头开始遍历队列。
二者区别在于:当队列为空时,element()方法会抛出异常,而 peek()会返回 null。
Queue 接口的几个方法可归纳如下:
Throws Exception | Return special value | |
Insert | add(e) | offer(e) |
Remove | remove() | poll() |
Examine | element() | peek() |