FileDocCategorySizeDatePackage
Stack.javaAPI DocJ2ME CLDC 1.13492Wed Feb 05 15:56:00 GMT 2003java.util

Stack

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.

author
Jonathan Payne
version
12/17/01 (CLDC 1.1)
since
JDK1.0, CLDC 1.0

Fields Summary
Constructors Summary
public Stack()
Creates an empty Stack.

    
Methods Summary
public booleanempty()
Tests if this stack is empty.

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

        return size() == 0;
    
public synchronized java.lang.Objectpeek()
Looks at the object at the top of this stack without removing it from the stack.

return
the object at the top of this stack (the last item of the Vector object).
exception
EmptyStackException if this stack is empty.

        int len = size();

        if (len == 0) {
            throw new EmptyStackException();
        }

        return elementAt(len - 1);
    
public synchronized java.lang.Objectpop()
Removes the object at the top of this stack and returns that object as the value of this function.

return
The object at the top of this stack (the last item of the Vector object).
exception
EmptyStackException if this stack is empty.

        Object obj;
        int    len = size();

        obj = peek();
        removeElementAt(len - 1);

        return obj;
    
public java.lang.Objectpush(java.lang.Object item)
Pushes an item onto the top of this stack. This has exactly the same effect as:
addElement(item)

param
item the item to be pushed onto this stack.
return
the item argument.
see
java.util.Vector#addElement

        addElement(item);
        return item;
    
public synchronized intsearch(java.lang.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.

param
o the desired object.
return
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.

        int i = lastIndexOf(o);

        if (i >= 0) {
            return size() - i;
        }

        return -1;