|
© 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 = new StackArray(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 Structurepublic void add(Object item)
add in interface Stackitem - The value to be added.AbstractStack.push(java.lang.Object)public Object remove()
remove in interface StackAbstractStack.pop()public Object get()
get in interface Stackpublic Iterator iterator()
Structureiterator in interface Structurestructure.StructureAbstractIterator,
Iterator,
Enumeration,
Structure.elements()public int size()
size in interface Stackpublic boolean isEmpty()
isEmpty in interface StructureisEmpty in class AbstractStructureAbstractLinear.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 | |||||||