Java中的堆栈API——Stack
堆栈(stack)是线性表的一种,只能在该线性表的表尾进行插入、获取或删除的操作。该线性表具有LIFO(后进先出)的特点,那么Java中如何实现这一功能呢,呵呵呵,Java已经为我们提供了API——Stack,Stack类继承Vector类。下面通过一个例子来认识一下该API:
import java.util.Stack; public class TestStack { public static void main(String[] args) { Stack<String> stack = new Stack<String>(); stack.push("a");//将数据压入堆栈顶部,其作用于下面addElement一样 stack.addElement("b"); stack.push("c"); stack.push("d"); stack.push("e"); if(!stack.empty()){//判断堆栈是否为空 System.out.println(stack.peek());//输出e。获取堆栈顶部的对象(Vector 对象的最后一项),但不从堆栈中移除该对象,如果堆栈为空,则抛出EmptyStackException异常 System.out.println(stack.pop()); //输出e。获取堆栈顶部的对象(Vector 对象的最后一项),并从堆栈顶部移除该对象,如果堆栈为空,则抛出EmptyStackException异常 System.out.println(stack.pop()); //输出d。 System.out.println(stack.search("c"));//获取指定对象在堆栈中的位置,以 1 为基数,如果没有则返回-1 } } }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。