栈类Stack

Stack类是Vector类的子类。它向用户提供了堆栈这种高级的数据结构。栈的基本特性就是先进后出。即先放入栈中的元素将后被推出。Stack类中提供了相应方法完成栈的有关操作。

基本方法:

public Object push(Object Hem)

将Hem压入栈中,Hem可以是任何类的对象。

public Object pop()

弹出一个对象。

public Object peek()

返回栈顶元素,但不弹出此元素。

public int search(Object obj)

搜索对象obj,返回它所处的位置。

public boolean empty()

判别栈是否为空。

例1.4 StackApp.java使用了上面的各种方法。

例1.4 StackApp.java。

import java.lang.*;

import java.util.*;

public class StackApp{

public static void main(String args[]){

Stack sta=new Stack();

sta.push("Apple");

sta.push("banana");

sta.push("Cherry");

//压入的为字符串对象

sta.push(new Integer(2));

//压入的为Integer的对象,值为2

sta.push(new Float(3.5));

//压入的为Float的对象,值为3.5

System.out.println("The stack is,"+sta);

//对应栈sta

System.out.println("The top of stack is:"+sta.peek());

//对应栈顶元素,但不将此元素弹出

System.out.println("The position of object Cherry is:"

+sta.search("cherry"));

//打印对象Cherry所处的位置

System.out.print("Pop the element of the stack:");

while(!sta.empty())

System.out.print(sta.pop()+" ");

System.out.println();

//将栈中的元素依次弹出并打印。与第一次打印的sta的结果比较,可看出栈

//先进后出的特点

}

}

运行结果(略)

 

原文地址:https://www.cnblogs.com/borter/p/9434162.html