首先,栈只定义了默认构造函数,用来创建一个空栈。 栈除了包括由Vector定义的所有方法,也定义了自己的一些方法。
| empty() | 可以用来判断栈是否为空 |
| peek( ) | 仅仅只是查看谁是栈的顶部对象,其实就是栈顶(插入的最后一个对象) |
| pop( ) | 移除栈顶部的对象,并可以作为当前函数的值返回该对象 |
| push() | 把这个对象压入栈顶部 |
|
search() | 返回某个对象与栈顶的距离值 |
Stack<Character> stack = new Stack<>();
//new 一个字符型的栈,当然你也可以new 一个其他类型的,替换一下<>里的类型就~欧克了!!!
//判断是否为空的话,直接stack.empty()就可以了,也就是 .方法就欧克了。
当然写入栈也是一样直接.方法就ok了。
stack.push('a');
stack.push('b');
stack.push('c');
stack.push('d');
stack.push('e');
其他方法同理哈!!!
还有一点需要注意就是查看某个对象在栈中的位置,其实一开始我也蒙了,我就是插入上面5个字符,为啥我返回e就是-1呢???当时给我搞得贼萌B~~~
然后找了写资料,发现问题了,我理解错了,这里返回的位置,是这个元素距离栈顶的位置,而我返回的这个e就是栈顶,也就没有另一个e和它异地恋算间距了~~~
就是说e没对象,光棍一个,-1属于它!!!
本文介绍了Java中栈的数据结构及其基本操作,包括empty()、peek()、pop()和push()方法。栈是一个后进先出(LIFO)的数据结构,通过实例展示了如何创建和使用栈。peek()方法用于查看栈顶元素,pop()移除并返回栈顶元素,push()将元素压入栈顶。特别地,search()方法返回元素离栈顶的距离,对于栈顶元素,返回值为-1。
1426

被折叠的 条评论
为什么被折叠?



