1.栈的定义
栈(Stack)
继承了 Vector ,是一种后进先出(LIFO:Last In First Out)的数据结构。可以理解为一群人依次走进了一个死胡同,由于没有其他出口,前面的人想出来就必须等后面的人先出,而最后一个进去的人可以最先出去也就是LIFO。
(区别于队列:队列(Queue) 是先进先出 (First In First Out, FIFO) 的数据结构,最先进队列的元素最早出队列。)
2.栈的基本操作
方法 | 返回值类型 | 描述 |
---|---|---|
empty( ) | boolean | 判断堆栈是否为空 |
pop() | E | 移除堆栈顶对象并返回该对象 |
push(E item) | E | 把对象压入栈顶 |
peek() | E | 返回栈顶对象但不移除 |
search(Object o) | int | 返回对象在栈中的位置,它是以1为基数(从顶向下数,从1开始计数) |
2.1 初始化
Stack<E> stack=new Stack<>();
2.2 判断是否为空
isEmpty()