/**
* @Classname Queue:继承子Collection接口,实现类包括Deque、LinkedList、PriorityQueue、BlockingQueue
* @note:Queue用来存放“等待处理元素”的集合,所以常运用于缓冲、并发访问、阻塞队列、多线程等领域
* @note:Queue除了继承Collection接口的一些方法,Queue还添加了额外的添加、删除、查询等操作,均提供了两种形式,
* 一种操作失败时直接返回异常,另一种则返回一个特殊的值
* @note:Queue一般都是FIFO,但不同的实现类队列顺序会有所不同,比如Stack是LIFO,priorityQueue是根据自然排序的
* @date 2021年7月13日 下午5:40:19
* @Version 1.0
*/
public interface Queue<E> extends Collection<E> {
/*
* Queue的添加操作:初衷是建议实现类禁止添加null元素,否则会报空指针,但LinkedList并无这样的响应
*/
boolean add(E e);// 添加失败(比如队满)会报运行时错误
boolean offer(E e);// 添加失败,只会3返回false
/*
* Queue的删除操作:返回头部
*/
E remove();// 队列为空时,会报异常
E poll();// 队列为空时,只会返回null
/*
* Queue的查询操作
*/
E element();// 查询为空时,会报异常
E peek();// 查询为空时,返回null
}
集合类源码之Queue(六)
最新推荐文章于 2024-06-16 09:46:44 发布