1. Stack栈:继承与Vector线程安全,不建议使用
- push添加
- pop返回并移除
- peek返回但不移除
- isEmpty判断是否为空
2. Queue单端队列
- offer添加 add失败会抛异常
- poll返回并移除 remove失败会抛异常
- peek返回但不移除 element失败会抛异常
2.1 PriorityQueue:有比较器,队列元素按大小重新排序
2.2 Deque双端队列:继承Q,所以除了Q的方法,还有如下方法
- offerFirst/Last addFirst/Last
- poolFirst/Last remoneFirst/Last
- peekFirst/Last peekFirst/Last getFirst/Last
- descendingIterator() 返回迭代器
- removeFirst/LastOccurrence(Object o)删除第一次出现的O
2.2.1 ArrayDeque:数组实现。适合少改多查
2.2.2 LinkedList:双向链表实现。适合多改少查
应优先使用双端队列Deque接口,而不是用遗留的栈Stack类,因为颗粒太大