Klasa Java stos
Stack jest podklasą Vector, która implementuje standardowy LIFO stos.
Stos definiuje jedynie domyślnego konstruktora z pustego stosu. W uzupełnieniu do stosu obejmuje wszystkie sposoby określone przez wektor definiuje również pewne ich metodami.
Stack()
Oprócz wszystkich metod określonych przez wektor, a on definiuje metody:
Nie. | metoda Opis |
---|---|
1 | boolean empty () Aby sprawdzić, czy stos jest pusty. |
2 | Peek Object () Zobacz na szczyt stosu przedmiotów, ale nie usuwa go ze stosu. |
3 | Obiekt pop () Zdjąć górną część obiektu stosu, a jako wartość tej funkcji zwraca obiekt. |
4 | Object Push (elementu Object) Popycha element na górze stosu. |
5 | int wyszukiwania (elementu Object) Zwraca położenie obiektu w stosie, przy czym 1 jako zasada. |
Przykłady
Następujący program ilustruje tę kolekcję obsługuje kilka metod
import java.util.*; public class StackDemo { static void showpush(Stack st, int a) { st.push(new Integer(a)); System.out.println("push(" + a + ")"); System.out.println("stack: " + st); } static void showpop(Stack st) { System.out.print("pop -> "); Integer a = (Integer) st.pop(); System.out.println(a); System.out.println("stack: " + st); } public static void main(String args[]) { Stack st = new Stack(); System.out.println("stack: " + st); showpush(st, 42); showpush(st, 66); showpush(st, 99); showpop(st); showpop(st); showpop(st); try { showpop(st); } catch (EmptyStackException e) { System.out.println("empty stack"); } } }
Powyższe przykłady zebrane wyniki przedstawiają się następująco:
stack: [ ] push(42) stack: [42] push(66) stack: [42, 66] push(99) stack: [42, 66, 99] pop -> 99 stack: [42, 66] pop -> 66 stack: [42] pop -> 42 stack: [ ] pop -> empty stack