public class IntStack
extends java.lang.Object
implements java.lang.Cloneable
IntStack is a stack of int values.
 Limitations:
   
   (1) The capacity of one of these stacks can change after it's created, but
   the maximum capacity is limited by the amount of free memory on the 
   machine. The constructor, ensureCapacity, push, 
   and trimToSize will result in an 
   OutOfMemoryError when free memory is exhausted.
   
   (2) A stack's capacity cannot exceed the maximum integer 2,147,483,647
   (Integer.MAX_VALUE). Any attempt to create a larger capacity
   results in a failure due to an arithmetic overflow. 
 Java Source Code for this class:
   
   http://www.cs.colorado.edu/~main/edu/colorado/collections/IntStack.java
   IntLinkedStack, 
ObjectStack, 
BooleanStack, 
ByteStack, 
CharStack, 
DoubleStack, 
FloatStack, 
LongStack, 
ShortStack| Constructor and Description | 
|---|
| IntStack()Initialize an empty stack with an initial capacity of 10. | 
| IntStack(int initialCapacity)Initialize an empty stack with a specified initial capacity. | 
| Modifier and Type | Method and Description | 
|---|---|
| java.lang.Object | clone()Generate a copy of this stack. | 
| void | ensureCapacity(int minimumCapacity)Change the current capacity of this stack. | 
| int | getCapacity()Accessor method to get the current capacity of this stack. | 
| boolean | isEmpty()Determine whether this stack is empty. | 
| int | peek()Get the top item of this stack, without removing the item. | 
| int | pop()Get the top item, removing it from this stack. | 
| void | push(int item)Push a new item onto this stack. | 
| int | size()Accessor method to determine the number of items in this stack. | 
| void | trimToSize()Reduce the current capacity of this stack to its actual size (i.e., the
 number of items it contains). | 
public IntStack()
push method works efficiently (without needing more
 memory) until this capacity is reached.
 Postcondition:
   This stack is empty and has an initial capacity of 10.java.lang.OutOfMemoryError - Indicates insufficient memory for: 
   new int[10].public IntStack(int initialCapacity)
push method works efficiently (without needing more
 memory) until this capacity is reached.initialCapacity - the initial capacity of this stack
 Precondition:
   initialCapacity is non-negative.
 Postcondition:
   This stack is empty and has the given initial capacity.java.lang.IllegalArgumentException - Indicates that initialCapacity is negative.java.lang.OutOfMemoryError - Indicates insufficient memory for:
   new int[initialCapacity].public java.lang.Object clone()
clone in class java.lang.ObjectIntStack before it can be used.java.lang.OutOfMemoryError - Indicates insufficient memory for creating the clone.public void ensureCapacity(int minimumCapacity)
minimumCapacity - the new capacity for this stack
 Postcondition:
   This stack's capacity has been changed to at least minimumCapacity.
   If the capacity was already at or greater than minimumCapacity,
   then the capacity is left unchanged.java.lang.OutOfMemoryError - Indicates insufficient memory for: new int[minimumCapacity].public int getCapacity()
push method works efficiently (without needing
 more memory) until this capacity is reached.public boolean isEmpty()
true if this stack is empty;
   false otherwise.public int peek()
java.util.EmptyStackException - Indicates that this stack is empty.public int pop()
java.util.EmptyStackException - Indicates that this stack is empty.public void push(int item)
item - the item to be pushed onto this stack 
 Postcondition:
   The item has been pushed onto this stack.java.lang.OutOfMemoryError - Indicates insufficient memory for increasing the stack's capacity.
 Note:
   An attempt to increase the capacity beyond
   Integer.MAX_VALUE will cause the stack to fail with an
   arithmetic overflow.public int size()
public void trimToSize()
java.lang.OutOfMemoryError - Indicates insufficient memory for altering the capacity.