【java】java.util.Stack类

来源:互联网 发布:mac桌面文件隐藏了 编辑:程序博客网 时间:2024/06/05 15:42

Stack是一个后进先出(last in first out,LIFO)的堆栈,在Vector类的基础上扩展5个方法而来(如下所示)。

E push(E item)            把项压入堆栈顶部。   E pop()            移除堆栈顶部的对象,并作为此函数的值返回该对象。   E peek()            查看堆栈顶部的对象,但不从堆栈中移除它。   boolean empty()            测试堆栈是否为空。    int search(Object o)            返回对象在堆栈中的位置,下标从1开始。 

示例:

import java.util.Stack;public class StackDemo {public static void main(String[] args) {Stack<String> s = new Stack<String>() ;          s.push("A") ;   // 入栈          s.push("B") ;   // 入栈          String tmp = s.peek() ;   // 查询栈顶元素,不移除        System.out.println(tmp);          String tmp1 = s.pop();   // 查询栈顶元素,移除         s.push("C") ;             s.push("D") ;        System.out.println(s);         int index = s.search("D");  //返回对象在堆栈中的位置        System.out.println(index) ;         if(!s.isEmpty()) System.out.println(s) ;  }}
运行结果:

B
[A, C, D]
1
[A, C, D]


0 0