疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

Java如何实现栈?


 

 
如何实现栈?
 
解决方法
 
下面的示例演示如何通过创建用户定义的push()方法的输入元素和pop()方法用于从堆栈中弹出元素实现堆栈。
 
public class MyStack {
   private int maxSize;
   private long[] stackArray;
   private int top;
   public MyStack(int s) {
      maxSize = s;
      stackArray = new long[maxSize];
      top = -1;
   }
   public void push(long j) {
      stackArray[++top] = j;
   }
   public long pop() {
      return stackArray[top--];
   }
   public long peek() {
      return stackArray[top];
   }
   public boolean isEmpty() {
      return (top == -1);
   }
   public boolean isFull() {
      return (top == maxSize - 1);
   }
   public static void main(String[] args) {
      MyStack theStack = new MyStack(10); 
      theStack.push(10);
      theStack.push(20);
      theStack.push(30);
      theStack.push(40);
      theStack.push(50);
      while (!theStack.isEmpty()) {
         long value = theStack.pop();
         System.out.print(value);
         System.out.print(" ");
      }
      System.out.println("");
   }
}
结果
 
上面的代码示例将产生以下结果。
 
50 40 30 20 10