Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion markdown/4-Stack and Queue.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Java里有一个叫做*Stack*的类,却没有叫做*Queue*的类(它是个
| 无 | `offerFirst(e)` | 向栈顶插入元素,失败则返回`false` |
| `pop()` | `removeFirst()` | 获取并删除栈顶元素,失败则抛出异常 |
| 无 | `pollFirst()` | 获取并删除栈顶元素,失败则返回`null` |
| `peek()` | `peekFirst()` | 获取但不删除栈顶元素,失败则抛出异常 |
| `peek()` | `getFirst()` | 获取但不删除栈顶元素,失败则抛出异常 |
| 无 | `peekFirst()` | 获取但不删除栈顶元素,失败则返回`null` |

上面两个表共定义了*Deque*的12个接口。添加,删除,取值都有两套接口,它们功能相同,区别是对失败情况的处理不同。**一套接口遇到失败就会抛出异常,另一套遇到失败会返回特殊值(`false`或`null`)**。除非某种实现对容量有限制,大多数情况下,添加操作是不会失败的。**虽然*Deque*的接口有12个之多,但无非就是对容器的两端进行操作,或添加,或删除,或查看**。明白了这一点讲解起来就会非常简单。
Expand Down