请用用java代码写一个堆栈

2015-02-12 06:30:02 阅读( 196 )

2277人 收藏本页

标签:Java面试题

public class Stack {

 int[] data;
 int maxSize;
 int top;
 public Stack(int maxSize) {
  this.maxSize = maxSize;
  data = new int[maxSize];
  top = -1;
 }
 
 /**
  * 依次加入数据
  * @param data 要加入的数据
  * @return 添加是否成功
  */
 public boolean push(int data) {
  if(top+1== maxSize) {
   System.out.println(“栈已满!”);
   return false;
  }
  this.data[++top] = data;
  return true;
 }
 
 /**
  * 从栈中取出数据
  * @return 取出的数据
  */
 public int pop() throws Exception{
  if(top==-1) {
   throw new Exception(“栈已空!”);
  }
  return this.data[top--];
 }
 
 public static void main(String[] args) throws Exception {
  Stack stack=new Stack(1000);
  stack.push(1);
  stack.push(2);
  stack.push(3);
  stack.push(4);
  stack.push(5);
  while(stack.top>=0)
  {
   System.out.println(stack.pop());
  }  
 }
}

来自IT公司面试手册

下一篇:编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串。

上一篇:Java如何格式化日期?

亲~ 如果您有更好的答案 可在评论区发表您独到的见解。

您想查看更多的信息: 面试题