Класс Stack<E>
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractList<E>
java.util.Vector<E>
java.util.Stack<E>
- Параметры типа:
-
E- Тип элементов-компонентов
- Все реализуемые интерфейсы:
-
Serializable,Cloneable,Iterable<E>,Collection<E>,List<E>,RandomAccess,SequencedCollection<E>
public class Stack<E> extends Vector<E>
Класс `Stack` представляет собой стек объектов с порядком «последним вошел — первым вышел» (LIFO). Он расширяет класс `Vector` с пятью операциями, которые позволяют использовать вектор как стек. Предоставляются обычные операции `добавления` и `удаления`, а также метод для получения верхнего элемента стека, метод для проверки, является ли стек пустым, и метод для поиска элемента в стеке и определения его расположения относительно вершины.
При первом создании стек не содержит элементов.
Более полный и согласованный набор операций стека 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 |
Помещает элемент в верхнюю часть этого стека. |
int |
search |
Возвращает 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
addFirst, addLast, getFirst, getLast, removeFirst, removeLast, reversed, sort
Подробное описание конструкторов
Stack
public Stack()
Создаёт пустой стек.
Подробное описание методов
push
public E push(E item)
Помещает элемент в верхнюю часть этого стека. Это эквивалентно следующему:
addElement(item)
- Параметры:
-
item- элемент, который необходимо поместить в этот стек. - Возвращает:
- переданный
itemаргумент. - См. также:
pop
public E pop()
Удаляет объект вверху этого стека и возвращает его как значение этой функции.
- Возвращает:
- Объект вверху этого стека (последний элемент объекта).
- Исключения:
-
EmptyStackException- если этот стек пуст.
peek
public E peek()
Просматривает объект вверху этого стека, не удаляя его из стека.
- Возвращает:
- объект вверху этого стека (последний элемент).
- Исключения:
-
EmptyStackException- если этот стек пуст.
empty
public boolean empty()
Проверяет, пуст ли этот стек.
- Возвращает:
- `true` тогда и только тогда, когда этот стек не содержит элементов; `false` в противном случае.
search
public int search(Object o)
Возвращает 1-основанную позицию объекта в этом стеке. Если объект
o встречается в этом стеке, этот метод возвращает расстояние от вершины стека до ближайшего вхождения объекта; элемент в верхней части стека считается находящимся на расстоянии `1`. Метод `equals` используется для сравнения o с элементами в этом стеке.- Параметры:
-
o- искомый объект. - Возвращает:
- 1-основанная позиция от вершины стека, где находится объект; значение `0` указывает, что объект отсутствует в стеке.
© 1993, 2023, 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/21/docs/api/java.base/java/util/Stack.html