33 | JAVA集合Stack(一种接口,不推荐使用)
作者:互联网
Stack
栈(Stack)是一种后进先出(LIFO:Last In First Out)的数据结构。
Stack
只有入栈和出栈的操作:
- 把元素压栈:
push(E)
; - 把栈顶的元素“弹出”:
pop()
; - 取栈顶元素但不弹出:
peek()
。
在Java中,我们用Deque
可以实现Stack
的功能:
- 把元素压栈:
push(E)
/addFirst(E)
; - 把栈顶的元素“弹出”:
pop()
/removeFirst()
; - 取栈顶元素但不弹出:
peek()
/peekFirst()
。
当我们把Deque
作为Stack
使用时,注意只调用push()
/pop()
/peek()
方法,不要调用addFirst()
/removeFirst()
/peekFirst()
方法,这样代码更加清晰。
在Java中,我们用Deque
可以实现Stack
的功能,注意只调用push()
/pop()
/peek()
方法,避免调用Deque
的其他方法。
最后,不要使用遗留类Stack
。
联想:在 C++ 中 Stack 也仅仅是对 Deque 的封装,转而调用 Deque 的接口。
标签:Deque,调用,JAVA,peek,33,pop,push,Stack 来源: https://www.cnblogs.com/mmxingye/p/16648566.html