Latest web development tutorials

classe Java Stack

Stack è una sottoclasse di Vector, che implementa uno stack LIFO standard.

Stack definisce solo il costruttore predefinito per creare uno stack vuoto. Oltre allo stack comprende tutti i metodi definiti dal vettore, definisce anche alcuni dei loro metodi.

Stack()

In aggiunta a tutti i metodi definiti dal vettore, e definisce metodi:

No. metodo Descrizione
1 boolean vuoto ()
Per verificare se la pila è vuota.
2 peek Object ()
Vedere cima alla pila di oggetti, ma non rimuove dalla pila.
3 Object pop ()
Rimuovere la parte superiore dell'oggetto pila, e il valore di questa funzione restituisce l'oggetto.
4 Object Push (elemento Object)
Spinge un elemento sulla sommità della pila.
5 int di ricerca (elemento Object)
Restituisce la posizione dell'oggetto in pila, con 1 come base.

Esempi

Il seguente programma illustra questa collezione supporta diversi metodi

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");
      }
   }
}

Gli esempi sopra risultati elaborati sono i seguenti:

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