Java Data Structure How to - Create Stack data structure








Question

We would like to know how to create Stack data structure.

Answer

public class Main{
  public static void main(String[] args) {
    MyStack theStack = new MyStack(10); // make new stack
    theStack.push(20);/* www .  j  a  va 2s . com*/
    theStack.push(40);
    theStack.push(60);
    theStack.push(80);

    while (!theStack.isEmpty()) {
      long value = theStack.pop();
      System.out.print(value);
      System.out.print(" ");
    }
    System.out.println("");
  }
}
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);
  }


}

The code above generates the following result.