Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
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.

A more complete and consistent set of LIFO stack operations is provided by the `Deque` interface and its implementations, which should be used in preference to this class. For example:

       Deque<Integer> stack = new ArrayDeque<Integer>();

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
| Java™ Platform Standard Ed. 6
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 SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 1993, 2010, Oracle and/or its affiliates. All rights reserved.