供自己巩固集合知识时写的笔记,不会对所有的内容都介绍
栈(Stack)是一种后进先出(LIFO:Last In First Out)的数据结构
Stack
只有入栈和出栈的操作:
- 把元素压栈:
push(E)
; - 把栈顶的元素"弹出":
pop()
; - 取栈顶元素但不弹出:
peek()
。
有的人在使用 Stack
时会发现, Stack
没有单独的接口。因为有个遗留类名字就叫 Stack
,出于兼容性考虑,所以没办法创建 Stack
接口。
Stack的作用
Stack在计算机中使用非常广泛,JVM在处理Java方法调用的时候就会通过栈这种数据结构维护方法调用的层次。例如:
```java
static void main(String[] args) {
foo(123);
}