Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Java

Java-Stack-Klasse

Java-Stack-Klasse

In diesem Tutorial lernen wir die Klasse Java Stack und ihre Methoden anhand von Beispielen kennen.

Das Java Collections Framework hat eine Klasse namens Stack die die Funktionalität der Stack-Datenstruktur bereitstellt.

Die Stack Klasse erweitert den Vector Klasse.


Stack-Implementierung

Im Stack werden Elemente in Last In First Out gespeichert und aufgerufen Benehmen. Das heißt, Elemente werden oben auf dem Stapel hinzugefügt und oben vom Stapel entfernt.


Stapel erstellen

Um einen Stapel zu erstellen, müssen wir die java.util.Stack importieren Paket zuerst. Sobald wir das Paket importiert haben, können wir wie folgt einen Stack in Java erstellen.

Stack<Type> stacks = new Stack<>();

Hier, Type gibt den Stapeltyp an. Zum Beispiel

// Create Integer type stack
Stack<Integer> stacks = new Stack<>();

// Create String type stack
Stack<String> stacks = new Stack<>();

Stack-Methoden

Seit Stack erweitert den Vector Klasse erbt sie alle Methoden Vector . Um mehr über verschiedene Vector zu erfahren Methoden finden Sie unter Java Vector Class.

Neben diesen Methoden ist der Stack Klasse enthält 5 weitere Methoden, die sie von Vector unterscheiden .


push()-Methode

Um ein Element an die Spitze des Stapels hinzuzufügen, verwenden wir den push() Methode. Zum Beispiel

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");

        System.out.println("Stack: " + animals);
    }
}

Ausgabe

Stack: [Dog, Horse, Cat]

pop()-Methode

Um ein Element von der Spitze des Stapels zu entfernen, verwenden wir den pop() Methode. Zum Beispiel

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");
        System.out.println("Initial Stack: " + animals);

        // Remove element stacks
        String element = animals.pop();
        System.out.println("Removed Element: " + element);
    }
}

Ausgabe

Initial Stack: [Dog, Horse, Cat]
Removed Element: Cat

peek()-Methode

Die peek() -Methode gibt ein Objekt von der Spitze des Stapels zurück. Zum Beispiel

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");
        System.out.println("Stack: " + animals);

        // Access element from the top
        String element = animals.peek();
        System.out.println("Element at top: " + element);

    }
}

Ausgabe

Stack: [Dog, Horse, Cat]
Element at top: Cat

Um ein Element im Stapel zu suchen, verwenden wir den search() Methode. Es gibt die Position des Elements von der Spitze des Stapels zurück. Zum Beispiel

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");
        System.out.println("Stack: " + animals);

        // Search an element
        int position = animals.search("Horse");
        System.out.println("Position of Horse: " + position);
    }
}

Ausgabe

Stack: [Dog, Horse, Cat]
Position of Horse: 2

empty()-Methode

Um zu prüfen, ob ein Stack leer ist oder nicht, verwenden wir den empty() Methode. Zum Beispiel

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");
        System.out.println("Stack: " + animals);

        // Check if stack is empty
        boolean result = animals.empty();
        System.out.println("Is the stack empty? " + result);
    }
}

Ausgabe

Stack: [Dog, Horse, Cat]
Is the stack empty? false

ArrayDeque statt Stack verwenden

Die Stack Klasse stellt die direkte Implementierung der Stack-Datenstruktur bereit. Es wird jedoch empfohlen, es nicht zu verwenden. Verwenden Sie stattdessen den ArrayDeque Klasse (implementiert die Deque Interface), um die Stack-Datenstruktur in Java zu implementieren.

Um mehr zu erfahren, besuchen Sie:


Java

  1. Letztes Java-Schlüsselwort
  2. Java-Instanz des Operators
  3. Java-Vererbung
  4. Verschachtelte statische Java-Klasse
  5. Anonyme Java-Klasse
  6. Java-Singleton-Klasse
  7. Java-Reflexion
  8. Java ObjectOutputStream-Klasse
  9. Java-Generika
  10. Java-Dateiklasse