Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Standard Ed. 5.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## java.util
Class Stack<E>

    java.lang.Object
      java.util.AbstractCollection<E>
          java.util.AbstractList<E>
              java.util.Vector<E>
                  java.util.Stack<E>

All Implemented Interfaces:
  Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, RandomAccess

    public class Stack<E>

extends Vector<E>

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
See Also:
  Serialized Form

Field Summary

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.
`E` | `peek()` Looks at the object at the top of this stack without removing it from the stack.
`E` | `pop()` Removes the object at the top of this stack and returns that object as the value of this function.
`E` | `push(E 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`

Constructor Detail

### Stack

    public Stack()

  Creates an empty Stack.

Method Detail

### push

    public E push(E 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(E)`

### pop

    public E 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 E 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.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Standard Ed. 5.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.