Stack - это расширение коллекции java.util.Vector с реализацией дисциплины обслуживания last-in-first-out или как называют в народе LIFO что обозначает "последним пришёл — первым ушёл". Не рекомендуется использовать, за исключением необходимости потокобезопасности, так как все операции с данными в наследнике java.util.Vector являются синхронизированными, за исключением метода push(E item) в самом Stack.
Немного кода с примером использования
Сам никогда не использовал так как не было необходимости, но может кому будет интересно
Немного кода с примером использования
Код:
package ru.mmo.develop;
import java.util.Stack;
/**
* @author L2CCCP
* @site http://l2cccp.com/
*/
public class TestStack
{
private final static int[] numbers = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
public static void main(String... args)
{
Stack<Integer> stack = new Stack<Integer>();
for(final int num : numbers)
stack.push(num); // Запись элементов в стек
final int last = stack.peek(); // Считывание элемента из стека без удаления
show("На первой\\верхней позиции: " + last);
final int search = 1;
final int position = stack.search(search); // Поиск элемента в стеке для получения позиции
show("Позиция числа " + search + ": " + position);
while(!stack.isEmpty())
show(stack.pop()); // Извлечение доступного\верхнего элемента с удалением
}
private final static void show(final Object str)
{
System.out.println(str);
}
}
Сам никогда не использовал так как не было необходимости, но может кому будет интересно