简介
Stack类是java.util包下的一个类,其原理就是一个数组。它一个最基本也是最重要的特征就是先进先出
。它继承java.util.Verctor
。
用法
Stack<String> stacks = new Stack<>();
stacks.push("a"); // 添加元素a
stacks.push("b"); // 添加元素b
stacks.push("c"); // 添加元素c
System.out.println(stacks.search("c")); // 输出3
System.out.println(stacks.pop()); // 输出c
System.out.println(stacks.peek()); // 输出b
System.out.println(stacks.pop()); // 输出b
System.out.println(stacks.pop()); // 输出a
System.out.println(stacks.empty()); // 输出true
API
- push:往栈中添加元素
- peek:获取最顶部的元素,如果是一个空栈,将抛出
java.util.EmptyStackException
- pop:获取并移除最顶部的元素
- search:获取元素在栈中的位置,从1开始计数,如果没有获取到则为-1
- empty:判断栈是否为空,返回true和false
- 其它:由于继承Vector类,所以可以调用Vector类下的API,如size()获取实际容量大小。