关于Stack的说明

用程序来说明一切吧
package com.tianyu.summer;

/**
 * @author Summer
 * 
 */
import java.util.*;

public class StackTest {

 public StackTest() {
  Stack stack = new Stack();

  Boolean bool = Boolean.TRUE;
  Character character = new Character('$');
  /**
   * 堆栈压栈时必须压入Object类型, 所以前面定义的类型全部是是Object的子类
   */
  try {
   stack.push(bool);
   printStack(stack);
   stack.push(character);
   printStack(stack);
   /**
    * 当要弹出堆栈的时候不需要带参数 因为堆栈是又一定的弹出规律的,如果自带参数程序会出错
    */
   stack.pop(); //
   printStack(stack);
   stack.pop();
   printStack(stack);
   stack.pop();
  } catch (EmptyStackException e) {
   /**
    * 抛出 java.util.EmptyStackException at java.util.Stack.peek(Unknown
    * Source) at java.util.Stack.pop(Unknown Source) at
    * com.tianyu.summer.StackTest. <init>(StackTest.java:31) at
    * com.tianyu.summer.StackTest.main(StackTest.java:64)
    * 因为堆栈为空,所以不能再进行出栈操作
    */
   e.printStackTrace();
  }
 }

 public void printStack(Stack stack) {
  if (stack.isEmpty()) {
   System.out.println("堆栈为空");
  } else {
   System.out.print("堆栈包含:");
   Enumeration items = stack.elements();
   while (items.hasMoreElements()) {
    System.out.print(items.nextElement() + " ");
   }
   System.out.print("/n");
  }
 }

 public void removeStack(Stack stack) {
  if (stack.isEmpty()) {
   System.out.println("堆栈为空");
  } else {
   System.out.print("堆栈包含:");
   Enumeration items = stack.elements();
   while (items.hasMoreElements()) {
    System.out.print(items.nextElement() + " ");
   }
   System.out.print("/n");
  }
 }

 public static void main(String[] args) {
  new StackTest();
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值