Java Stack 类------栈的个人理解(最近刷力扣,刷出来的,就了解了下)

首先,栈只定义了默认构造函数,用来创建一个空栈。 栈除了包括由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属于它!!! 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值