- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<E>
-
- java.util.Vector<E>
-
- java.util.Stack<E>
-
- All Implemented Interfaces:
-
Serializable
,Cloneable
,Iterable<E>
,Collection<E>
,List<E>
,RandomAccess
public class Stack<E> extends Vector<E>
Stack
类代表最先进先出(LIFO)堆栈的对象。 它扩展了类Vector
与五个操作,允许一个向量作为一个堆栈。 通常push
和pop
设置操作,以及作为一种方法来peek
在堆栈,以测试堆栈是否为一个方法在顶部项目empty
,以及一种方法search
堆栈一个项目,并发现多远它是从顶部。当首次创建堆栈时,它不包含项目。
更完整和一致的LIFO堆栈操作集由
Deque
接口及其实现提供,应优先于此类使用。 例如:Deque<Integer> stack = new ArrayDeque<Integer>();
- 从以下版本开始:
- 1.0
- 另请参见:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class java.util.AbstractList
modCount
-
Fields inherited from class java.util.Vector
capacityIncrement, elementCount, elementData
-
-
构造方法摘要
构造方法 Constructor 描述 Stack()
创建一个空堆栈。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 boolean
empty()
测试此堆栈是否为空。E
peek()
查看此堆栈顶部的对象,而不从堆栈中删除它。E
pop()
删除此堆栈顶部的对象,并将该对象作为此函数的值返回。E
push(E item)
将项目推送到此堆栈的顶部。int
search(Object o)
返回一个对象在此堆栈上的基于1的位置。-
Methods inherited from interface java.util.Collection
parallelStream, stream
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from class java.util.Vector
add, add, addAll, addAll, addElement, capacity, clear, clone, contains, containsAll, copyInto, elementAt, elements, ensureCapacity, equals, firstElement, forEach, get, hashCode, indexOf, indexOf, insertElementAt, isEmpty, iterator, lastElement, lastIndexOf, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeAllElements, removeElement, removeElementAt, removeIf, removeRange, replaceAll, retainAll, set, setElementAt, setSize, size, sort, spliterator, subList, toArray, toArray, toString, trimToSize
-
-
-
-
方法详细信息
-
push
public E push(E item)
将项目推送到此堆栈的顶部。 这与以下效果完全相同:addElement(item)
- 参数
-
item
- 要推送到此堆栈的项目。 - 结果
-
item
参数。 - 另请参见:
-
Vector.addElement(E)
-
pop
public E pop()
删除此堆栈顶部的对象,并将该对象作为此函数的值返回。- 结果
-
该堆栈顶部的对象(
Vector
对象的最后一个项目)。 - 异常
-
EmptyStackException
- 如果这个堆栈是空的。
-
peek
public E peek()
查看此堆栈顶部的对象,而不从堆栈中删除它。- 结果
-
该堆栈顶部的对象(
Vector
对象的最后一个项目)。 - 异常
-
EmptyStackException
- 如果这个堆栈是空的。
-
empty
public boolean empty()
测试此堆栈是否为空。- 结果
-
true
当且仅当此堆栈不包含项目时;false
否则。
-
search
public int search(Object o)
返回一个对象在此堆栈上的基于1的位置。 如果对象o
作为该堆栈中的项目发生,则该方法返回距堆栈顶部最近堆栈顶部的距离; 堆栈中最上面的项目被认为是距离1
。equals
方法用于将o
与此堆栈中的项目进行比较。- 参数
-
o
- 所需的对象。 - 结果
-
从该对象所在的堆栈顶部的基于1的位置;
返回值
-1
表示对象不在堆栈上。
-
-