Java Data Structures Stack

Description

Java Data Structures Stack


class StackX {//from   w  w w.ja v  a2  s .  c om
   private int maxSize; // size of stack array
   private long[] stackArray;
   private int top; // top of stack

   public StackX(int s) // constructor
   {
      maxSize = s; // set array size
      stackArray = new long[maxSize]; // create array
      top = -1; // no items yet
   }

   public void push(long j) // put item on top of stack
   {
      stackArray[++top] = j; // increment top, insert item
   }

   public long pop() // take item from top of stack
   {
      return stackArray[top--]; // access item, decrement top
   }

   public long peek() // peek at top of stack
   {
      return stackArray[top];
   }

   public boolean isEmpty() // true if stack is empty
   {
      return (top == -1);
   }

   public boolean isFull() // true if stack is full
   {
      return (top == maxSize - 1);
   }

}

public class Main {
   public static void main(String[] args) {
      StackX theStack = new StackX(10); // make new stack
      theStack.push(20); // push items onto stack
      theStack.push(40);
      theStack.push(60);
      theStack.push(80);

      while (!theStack.isEmpty()) // until it's empty,
      { // delete item from stack
         long value = theStack.pop();
         System.out.print(value); // display it
         System.out.print(" ");
      } 
      System.out.println("");
   }
}



PreviousNext

Related