java.util
Class Stack

java.lang.Object
  extended byjava.util.AbstractCollection
      extended byjava.util.AbstractList
          extended byjava.util.Vector
              extended byjava.util.Stack
All Implemented Interfaces:
Cloneable, Collection, List, RandomAccess, Serializable

public class Stack
extends Vector

The Stack class represents a last-in-first-out (LIFO) stack of objects. It extends class Vector with five operations that allow a vector to be treated as a stack. The usual push and pop operations are provided, as well as a method to peek at the top item on the stack, a method to test for whether the stack is empty, and a method to search the stack for an item and discover how far it is from the top.

When a stack is first created, it contains no items.

Since:
JDK1.0
Author:
Jonathan Payne
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class java.util.AbstractList
 
Field Summary
private static long serialVersionUID
          use serialVersionUID from JDK 1.0.2 for interoperability
 
Fields inherited from class java.util.Vector
capacityIncrement, elementCount, elementData
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
Stack()
          Creates an empty Stack.
 
Method Summary
 boolean empty()
          Tests if this stack is empty.
 Object peek()
          Looks at the object at the top of this stack without removing it from the stack.
 Object pop()
          Removes the object at the top of this stack and returns that object as the value of this function.
 Object push(Object item)
          Pushes an item onto the top of this stack.
 int search(Object o)
          Returns the 1-based position where an object is on this stack.
 
Methods inherited from class java.util.Vector
add, add, addAll, addAll, addElement, capacity, clear, clone, contains, containsAll, copyInto, elementAt, elements, ensureCapacity, equals, firstElement, get, hashCode, indexOf, indexOf, insertElementAt, isEmpty, lastElement, lastIndexOf, lastIndexOf, remove, remove, removeAll, removeAllElements, removeElement, removeElementAt, removeRange, retainAll, set, setElementAt, setSize, size, subList, toArray, toArray, toString, trimToSize
 
Methods inherited from class java.util.AbstractList
iterator, listIterator, listIterator
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
iterator, listIterator, listIterator
 

Field Detail

serialVersionUID

private static final long serialVersionUID
use serialVersionUID from JDK 1.0.2 for interoperability

See Also:
Constant Field Values
Constructor Detail

Stack

public Stack()
Creates an empty Stack.

Method Detail

push

public Object push(Object item)
Pushes an item onto the top of this stack. This has exactly the same effect as:
 addElement(item)

Parameters:
item - the item to be pushed onto this stack.
Returns:
the item argument.
See Also:
Vector.addElement(java.lang.Object)

pop

public Object pop()
Removes the object at the top of this stack and returns that object as the value of this function.

Returns:
The object at the top of this stack (the last item of the Vector object).
Throws:
EmptyStackException - if this stack is empty.

peek

public Object peek()
Looks at the object at the top of this stack without removing it from the stack.

Returns:
the object at the top of this stack (the last item of the Vector object).
Throws:
EmptyStackException - if this stack is empty.

empty

public boolean empty()
Tests if this stack is empty.

Returns:
true if and only if this stack contains no items; false otherwise.

search

public int search(Object o)
Returns the 1-based position where an object is on this stack. If the object o occurs as an item in this stack, this method returns the distance from the top of the stack of the occurrence nearest the top of the stack; the topmost item on the stack is considered to be at distance 1. The equals method is used to compare o to the items in this stack.

Parameters:
o - the desired object.
Returns:
the 1-based position from the top of the stack where the object is located; the return value -1 indicates that the object is not on the stack.