Clasa Java Stack

În acest tutorial, vom afla despre clasa Java Stack și metodele sale cu ajutorul unor exemple.

Cadrul de colecții Java are o clasă numită Stackcare oferă funcționalitatea structurii de date a stivei.

StackClasa extinde Vectorclasa.

Implementarea stivei

În stivă, elementele sunt stocate și accesate în modul Last In First Out . Adică, elementele sunt adăugate în partea de sus a stivei și eliminate din partea de sus a stivei.

Crearea unei stive

Pentru a crea o stivă, trebuie mai java.util.Stackîntâi să importăm pachetul. Odată ce am importat pachetul, iată cum putem crea o stivă în Java.

 Stack stacks = new Stack(); 

Aici, Typeindică tipul stivei. De exemplu,

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

Metode de stivă

Deoarece Stackextinde Vectorclasa, el moștenește toate metodele Vector. Pentru a afla despre diferite Vectormetode, vizitați Java Vector Class.

Pe lângă aceste metode, Stackclasa include încă 5 metode care o diferențiază de Vector.

push () Metoda

Pentru a adăuga un element în partea de sus a stivei, folosim push()metoda. De exemplu,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); ) ) 

Ieșire

 Stivă: (câine, cal, pisică) 

pop () Metodă

Pentru a elimina un element din partea de sus a stivei, folosim pop()metoda. De exemplu,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack 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); ) ) 

Ieșire

 Stiva inițială: (câine, cal, pisică) Element eliminat: pisică 

peek () Metodă

peek()Metoda returneaza un obiect din partea de sus a stivei. De exemplu,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack 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); ) ) 

Ieșire

 Stivă: (câine, cal, pisică) Element în partea de sus: Cat 

metoda search ()

Pentru a căuta un element din stivă, folosim search()metoda. Returnează poziția elementului din partea de sus a stivei. De exemplu,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack 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); ) ) 

Ieșire

 Stiva: (câine, cal, pisică) Poziția calului: 2 

empty () Metodă

Pentru a verifica dacă un teanc este gol sau nu, folosim empty()metoda. De exemplu,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack 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); ) ) 

Ieșire

Stiva: (Câine, Cal, Pisică) Stiva este goală? fals

Utilizați ArrayDeque în loc de Stack

StackClasa asigură punerea în aplicare directă a structurii de date stiva. Cu toate acestea, este recomandat să nu-l utilizați. În schimb, utilizați ArrayDequeclasa (implementează Dequeinterfața) pentru a implementa structura de date a stivei în Java.

Pentru a afla mai multe, vizitați:

  • Java ArrayDeque
  • De ce să folosiți Deque over Stack?

Articole interesante...