|
© 1998-2002 McGraw-Hill | |||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--structure.AbstractStructure | +--structure.AbstractLinear | +--structure.AbstractStack | +--structure.StackArray
An implementation of a stack, based on array. The head of the stack is stored in the first position of the array, allowing the stack to grow and shrink in constant time. This stack implementation is ideal for applications that require a stack with a known maximum size that expands in constant time.
Example usage:
To reverse a string, we would use the following:
public static void main(String[] arguments) { if(arguments.length > 0){StackArray
reverseStack = newStackArray(arguments[0].length())
; String s = arguments[0]; for(int i=0; i < s.length(); i++){ reverseStack.push(new Character(s.charAt(i)))
; } while(!reverseStack.AbstractLinear.empty()
){ System.out.print(reverseStack.AbstractStack.pop()
); } System.out.println(); } }
Stack
,
StackVector
,
StackList
,
AbstractStack
Field Summary | |
protected Object[] |
data
The array of value references. |
protected int |
top
An index to the top element of the stack. |
Constructor Summary | |
StackArray(int size)
Construct a stack capable of holding at least size elements. |
Method Summary | |
void |
add(Object item)
Add a value to the top of the stack. |
void |
clear()
Remove all elements from the stack. |
Object |
get()
Get a reference to the top value in the stack. |
boolean |
isEmpty()
Determine if the stack is empty. |
boolean |
isFull()
Determine if the stack is full. |
Iterator |
iterator()
Returns an iterator for traversing the structure. |
Object |
remove()
Remove a value from the top of the stack. |
int |
size()
Determine the number of elements in the stack. |
String |
toString()
Construct a string representation of the stack. |
Methods inherited from class structure.AbstractStack |
getFirst, peek, pop, push |
Methods inherited from class structure.AbstractLinear |
empty, remove |
Methods inherited from class structure.AbstractStructure |
contains, elements, hashCode, values |
Methods inherited from class java.lang.Object |
|
Methods inherited from interface structure.Stack |
empty, getFirst, peek, pop, push |
Methods inherited from interface structure.Structure |
contains, elements, remove, values |
Field Detail |
protected int top
protected Object[] data
Constructor Detail |
public StackArray(int size)
size
- The maximum size of the stack.Method Detail |
public void clear()
clear
in interface Structure
public void add(Object item)
add
in interface Stack
item
- The value to be added.AbstractStack.push(java.lang.Object)
public Object remove()
remove
in interface Stack
AbstractStack.pop()
public Object get()
get
in interface Stack
public Iterator iterator()
Structure
iterator
in interface Structure
structure.Structure
AbstractIterator
,
Iterator
,
Enumeration
,
Structure.elements()
public int size()
size
in interface Stack
public boolean isEmpty()
isEmpty
in interface Structure
isEmpty
in class AbstractStructure
AbstractLinear.empty()
public boolean isFull()
public String toString()
toString
in class Object
|
© 1998-2002 McGraw-Hill | |||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |