Class SimpleStack

All Implemented Interfaces:
Serializable, Cloneable, Iterable, Collection, List, RandomAccess, SequencedCollection

public class SimpleStack extends ArrayList
A LIFO (last in, first out) unbounded stack of objects. A SimpleStack supports the following operations:
  • add a new element to the top of the stack
  • remove and return the element on the top of the stack
  • return the element on the top of the stack
This class is similar to Stack except that it extends ArrayList rather than Vector and is therefore not thread safe. The top of the stack corresponds to the last element in the underlying list, whereas the bottom corresponds to the first.

The SimpleStack implementation supports null elements; however, if null elements are added, care must be taken to distinguish a null element returned from pop() or peek() from a null value that indicates the stack is empty.

Since:
Coherence 3.2
Author:
jh 2006.05.04
See Also:
  • Constructor Details

    • SimpleStack

      public SimpleStack()
      Create a new empty SimpleStack.
    • SimpleStack

      public SimpleStack(int nCapacity)
      Create a new empty SimpleStack with the specified initial capacity.
      Parameters:
      nCapacity - the initial capacity of the underlying list used to store elements
  • Method Details

    • push

      public void push(Object oElement)
      Add the given object to the top of the stack.
      Parameters:
      oElement - the object to place on top of the stack
    • pop

      public Object pop()
      Remove and return the object that is currently on top of the stack.
      Returns:
      the object removed from the top of the stack or null if the stack is empty
    • peek

      public Object peek()
      Return the object that is currently on top of the stack.
      Returns:
      the object on top of the stack or null if the stack is empty