Spec-Zone.ru › OpenJDK 8

Класс Stack<E>

  • java.lang.Object
    • java.util.AbstractCollection<E>
      • java.util.AbstractList<E>
        • java.util.Vector<E>
          • java.util.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>();
С тех пор:
JDK1.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, sort, spliterator, subList, toArray, toArray, toString, trimToSize

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

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

Методы, унаследованные от интерфейса java.util.Collection

parallelStream, stream

Конструкторы

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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API