Top Description Fields Constructors Methods
org.apache.commons.collections4

public Class ArrayStack<E>

extends ArrayList<E>
Class Inheritance
Annotations
@Deprecated
Type Parameters
<E>
the type of elements in this list
Imports
java.util.ArrayList, .EmptyStackException

Deprecated

use java.util.ArrayDeque instead (available from Java 1.6)

An implementation of the java.util.Stack API that is based on an ArrayList instead of a Vector, so it is not synchronized to protect against multi-threaded access. The implementation is therefore operates faster in environments where you do not need to worry about multiple thread contention.

The removal order of an ArrayStack is based on insertion order: The most recently added element is removed first. The iteration order is not the same as the removal order. The iterator returns elements from the bottom up.

Unlike Stack, ArrayStack accepts null entries.

Note

From version 4.0 onwards, this class does not implement the removed Buffer interface anymore.

Since
1.0
See Also
java.util.Stack

Field Summary

Modifier and TypeField and Description
private static final long
serialVersionUID

Hides java.util.ArrayList.serialVersionUID.

Ensure serialization compatibility

Constructor Summary

AccessConstructor and Description
public
ArrayStack()

Constructs a new empty ArrayStack.

public
ArrayStack(final int
the initial size to use
initialSize
)

Constructs a new empty ArrayStack with an initial size.

Method Summary

Modifier and TypeMethod and Description
public boolean

Returns:

true if the stack is currently empty
empty
()

Return true if this stack is currently empty.

public E

Returns:

the top item on the stack
peek
()

Returns the top item off of this stack without removing it.

public E

Returns:

the n'th item on the stack, zero relative
peek
(final int
the number of items down to go
n
)

Returns the n'th item down (zero-relative) from the top of this stack without removing it.

public E

Returns:

the top item on the stack
pop
()

Pops the top item off of this stack and return it.

public E

Returns:

the item just pushed
push
(final E
the item to be added
item
)

Pushes a new item onto the top of this stack.

public int

Returns:

the 1-based depth into the stack of the object, or -1 if not found
search
(final Object
the object to be searched for
object
)

Returns the one-based position of the distance from the top that the specified object exists on this stack, where the top-most element is considered to be at distance 1.

Inherited from java.util.ArrayList:
addaddaddAlladdAlladdFirstaddLastclearclonecontainsensureCapacityequalsforEachgetgetFirstgetLasthashCodeindexOfisEmptyiteratorlastIndexOflistIteratorlistIteratorremoveremoveremoveAllremoveFirstremoveIfremoveLastremoveRangereplaceAllretainAllsetsizesortspliteratorsubListtoArraytoArraytrimToSize

Field Detail

serialVersionUIDback to summary
private static final long serialVersionUID

Hides java.util.ArrayList.serialVersionUID.

Ensure serialization compatibility

Constructor Detail

ArrayStackback to summary
public ArrayStack()

Constructs a new empty ArrayStack. The initial size is controlled by ArrayList and is currently 10.

ArrayStackback to summary
public ArrayStack(final int initialSize)

Constructs a new empty ArrayStack with an initial size.

Parameters
initialSize:int

the initial size to use

Exceptions
IllegalArgumentException:
if the specified initial size is negative

Method Detail

emptyback to summary
public boolean empty()

Return true if this stack is currently empty.

This method exists for compatibility with java.util.Stack. New users of this class should use isEmpty instead.

Returns:boolean

true if the stack is currently empty

peekback to summary
public E peek() throws EmptyStackException

Returns the top item off of this stack without removing it.

Returns:E

the top item on the stack

Exceptions
EmptyStackException:
if the stack is empty
peekback to summary
public E peek(final int n) throws EmptyStackException

Returns the n'th item down (zero-relative) from the top of this stack without removing it.

Parameters
n:int

the number of items down to go

Returns:E

the n'th item on the stack, zero relative

Exceptions
EmptyStackException:
if there are not enough items on the stack to satisfy this request
popback to summary
public E pop() throws EmptyStackException

Pops the top item off of this stack and return it.

Returns:E

the top item on the stack

Exceptions
EmptyStackException:
if the stack is empty
pushback to summary
public E push(final E item)

Pushes a new item onto the top of this stack. The pushed item is also returned. This is equivalent to calling add.

Parameters
item:E

the item to be added

Returns:E

the item just pushed

searchback to summary
public int search(final Object object)

Returns the one-based position of the distance from the top that the specified object exists on this stack, where the top-most element is considered to be at distance 1. If the object is not present on the stack, return -1 instead. The equals() method is used to compare to the items in this stack.

Parameters
object:Object

the object to be searched for

Returns:int

the 1-based depth into the stack of the object, or -1 if not found