Klasa Java stacka

U ovom uputstvu uz primjere ćemo naučiti o klasi Java Stack i njezinim metodama.

Okvir Java zbirki ima klasu Stackkoja pruža funkcionalnost strukture podataka steka.

StackKlasa proširuje Vectorklasu.

Implementacija stoga

U hrpi, elementi se pohranjuju i pristupa im se na način Last In First Out . Odnosno, elementi se dodaju na vrh stoga i uklanjaju s vrha stoga.

Stvaranje stoga

Da bismo stvorili stog, prvo moramo uvesti java.util.Stackpaket. Nakon što uvozimo paket, evo kako možemo stvoriti stog u Javi.

 Stack stacks = new Stack(); 

Ovdje Typeoznačava vrstu stoga. Na primjer,

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

Metode slaganja

Budući da Stackproširuje Vectorklasu, nasljeđuje sve metode Vector. Da biste saznali više o različitim Vectormetodama, posjetite Java Vector Class.

Pored ovih metoda, Stackklasa uključuje još 5 metoda koje je razlikuju od Vector.

push () metoda

Da bismo dodali element na vrh stoga, koristimo push()metodu. Na primjer,

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

Izlaz

 Stog: (pas, konj, mačka) 

metoda pop ()

Za uklanjanje elementa s vrha stoga koristimo pop()metodu. Na primjer,

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

Izlaz

 Početni stog: (pas, konj, mačka) Uklonjeni element: mačka 

metoda zavirivanja ()

peek()Metoda vraća objekt s vrha dimnjaka. Na primjer,

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

Izlaz

 Stog: (pas, konj, mačka) Element na vrhu: mačka 

metoda pretraživanja ()

Za pretragu elementa u stogu koristimo search()metodu. Vraća položaj elementa s vrha stoga. Na primjer,

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

Izlaz

 Stog: (pas, konj, mačka) Položaj konja: 2 

prazna () metoda

Da bismo provjerili je li stog prazan ili ne, koristimo empty()metodu. Na primjer,

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

Izlaz

Stog: (pas, konj, mačka) Je li stog prazan? lažno

Koristite ArrayDeque umjesto stoga

StackKlasa pruža izravnu primjenu strukture stog podataka. Međutim, preporuča se da ga ne koristite. Umjesto toga, upotrijebite ArrayDequeklasu (implementira Dequesučelje) za implementaciju strukture podataka steka u Javi.

Da biste saznali više, posjetite:

  • Java ArrayDeque
  • Zašto koristiti Deque preko Stacka?

Zanimljivi članci...