Класс Stack<E>

Все реализованные интерфейсы:
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
См. также:
Форматирование сериализованных данных

Поля

Поля, объявленные в классе java.util.Vector

capacityIncrement, elementCount, elementData

Поля, объявленные в классе java.util.AbstractList

modCount

Краткое описание конструкторов

Конструктор Описание
Stack()

Создаёт пустой стек.

Краткое описание методов

Модификатор и тип Метод Описание
boolean empty()

Проверяет, пуст ли этот стек.

E peek()

Просматривает объект в верхней части этого стека, не удаляя его из стека.

E pop()

Удаляет объект в верхней части этого стека и возвращает этот объект как значение этой функции.

E push​(E item)

Добавляет элемент в верхнюю часть этого стека.

int search​(Object o)

Возвращает 1-основанную позицию, на которой находится объект в этом стеке.

Методы, объявленные в классе 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, spliterator, subList, toArray, toArray, toString, trimToSize

Методы, объявленные в классе java.lang.Object

finalize, getClass, notify, notifyAll, wait, wait, wait

Методы, объявленные в интерфейсе java.util.Collection

parallelStream, stream, toArray

Методы, объявленные в интерфейсе java.util.List

sort

Подробное описание конструкторов

Stack

public Stack()

Создаёт пустой стек.

Подробное описание методов

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 указывает, что объекта нет в стеке.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Stack.html

Spec-Zone .ru
спецификации, руководства, описания, API