Package io.microsphere.collection
Class ArrayStack<E>
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<E>
-
- java.util.ArrayList<E>
-
- io.microsphere.collection.ArrayStack<E>
-
- Type Parameters:
E- Type of component elements
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,java.lang.Iterable<E>,java.util.Collection<E>,java.util.List<E>,java.util.RandomAccess
public class ArrayStack<E> extends java.util.ArrayList<E>TheStackclass represents a last-in-first-out (LIFO) stack of objects. It extends classVectorwith five operations that allow a vector to be treated as a stack. The usualpushandpopoperations are provided, as well as a method topeekat the top item on the stack, a method to test for whether the stack isempty, and a method tosearchthe stack for an item and discover how far it is from the top.The non thread-safe version of
Stack.- Since:
- 1.0.0
- Author:
- Mercy
- See Also:
ArrayList,Stack, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ArrayStack()Creates an empty Stack.ArrayStack(int initialCapacity)Constructs a new, empty stack with the specified initial capacity.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanempty()Tests if this stack is empty.Epeek()Looks at the object at the top of this stack without removing it from the stack.Epop()Removes the object at the top of this stack and returns that object as the value of this function.Epush(E item)Pushes an item onto the top of this stack.intsearch(java.lang.Object o)Returns the 1-based position where an object is on this stack.-
Methods inherited from class java.util.ArrayList
add, add, addAll, addAll, clear, clone, contains, ensureCapacity, forEach, get, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeIf, removeRange, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray, trimToSize
-
-
-
-
Constructor Detail
-
ArrayStack
public ArrayStack()
Creates an empty Stack.
-
ArrayStack
public ArrayStack(int initialCapacity)
Constructs a new, empty stack with the specified initial capacity.- Parameters:
initialCapacity- the initial capacity of the stack.- Throws:
java.lang.IllegalArgumentException- if the specified initial capacity is negative
-
-
Method Detail
-
push
public E push(E item)
Pushes an item onto the top of this stack. This has exactly the same effect as:ArrayList.add(Object)- Parameters:
item- the item to be pushed onto this stack.- Returns:
- the
itemargument. - See Also:
ArrayList.add(Object)
-
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
ArrayListobject). - Throws:
java.util.EmptyStackException- if this stack is empty.
-
peek
public E peek() throws java.util.EmptyStackException
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
ArrayListobject). - Throws:
java.util.EmptyStackException- if this stack is empty.
-
empty
public boolean empty()
Tests if this stack is empty.- Returns:
trueif and only if this stack contains no items;falseotherwise.
-
search
public int search(java.lang.Object o)
Returns the 1-based position where an object is on this stack. If the objectooccurs 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 distance1. Theequalsmethod is used to compareoto 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
-1indicates that the object is not on the stack.
-
-