Stack
Stack继承于Vector,Stack是栈,它包含Vector中的全部API
Stack是通过数组实现的,而非链表
特性是FILO:first in last out
入栈和出栈都是对栈顶元素而言
Stack只有一个默认构造函数
Stack()
Stack实际上也是通过数组去实现的。
执行push时(即,将元素推入栈中),是通过将元素追加的数组的末尾中。
执行peek时(即,取出栈顶元素,不执行删除),是返回数组末尾的元素。
执行pop时(即,取出栈顶元素,并将该元素从栈中删除),是取出数组末尾的元素,然后将该元素从数组中删除。
Stack继承于Vector,意味着Vector拥有的属性和功能,Stack都拥有。
代码:
package day19; /* Stack继承于Vector,Stack是栈,它包含Vector中的全部API Stack是通过数组实现的,而非链表 特性是FILO:first in last out 入栈和出栈都是对栈顶元素而言 Stack只有一个默认构造函数 Stack() * */ import org.junit.Test; import java.util.Stack; public class Demo4 { @Test public void test1(){ //模拟栈操作 Stack<String> stack = new Stack<>(); stack.push("贾宝玉"); stack.push("贾珠"); stack.push("贾环"); System.out.println(stack);//[贾宝玉, 贾珠, 贾环] int index = stack.search("贾宝玉"); System.out.println(index);//3 String p1 = stack.peek(); System.out.println(p1);//贾环 System.out.println(stack);//[贾宝玉, 贾珠, 贾环] //弹栈 String popString = stack.pop(); System.out.println(popString);//贾环 System.out.println(stack);//[贾宝玉, 贾珠] String p2 = stack.peek(); System.out.println(p2);//贾珠 int indexs = stack.search("贾宝玉"); System.out.println(indexs);//2 boolean isEmpty = stack.empty(); System.out.println(isEmpty);//false } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2021-01-18 MongoDB balancer操作和备份