Java Stack-klasse

I denne veiledningen vil vi lære om Java Stack-klassen og dens metoder ved hjelp av eksempler.

Rammeverket for Java-samlinger har en klasse som heter Stackfunksjonaliteten til stabeldatastrukturen.

Den Stackklasse utvider Vectorklasse.

Stakkimplementering

I stabel lagres og åpnes elementer på Last In First Out måte. Det vil si at elementer blir lagt til toppen av stabelen og fjernet fra toppen av stabelen.

Lage en stabel

For å lage en stabel, må vi først importere java.util.Stackpakken. Når vi først har importert pakken, kan du lage en stabel i Java.

 Stack stacks = new Stack(); 

Her Typeangir bunktypen. For eksempel,

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

Stakkmetoder

Siden Stackutvider Vectorklassen, arver den alle metodene Vector. For å lære om forskjellige Vectormetoder, besøk Java Vector Class.

I tillegg til disse metodene Stackinkluderer klassen 5 flere metoder som skiller den fra Vector.

push () Metode

For å legge til et element øverst i bunken bruker vi push()metoden. For eksempel,

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

Produksjon

 Stack: (Hund, hest, katt) 

pop () Metode

For å fjerne et element fra toppen av bunken bruker vi pop()metoden. For eksempel,

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

Produksjon

 Innledende stabel: (Hund, hest, katt) Fjernet element: Katt 

peek () Metode

Den peek()metoden returnerer en gjenstand fra toppen av stabelen. For eksempel,

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

Produksjon

 Stabel: (Hund, hest, katt) Element øverst: Katt 

søk () Metode

For å søke i et element i bunken bruker vi search()metoden. Den returnerer elementets posisjon fra toppen av bunken. For eksempel,

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

Produksjon

 Stack: (Hund, hest, katt) Hestens posisjon: 2 

tom () Metode

For å sjekke om en stabel er tom eller ikke, bruker vi empty()metoden. For eksempel,

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

Produksjon

Stabel: (Hund, hest, katt) Er stakken tom? falsk

Bruk ArrayDeque i stedet for Stack

Den Stackklasse gir den direkte implementering av stabelen datastrukturen. Det anbefales imidlertid å ikke bruke den. Bruk i stedet ArrayDequeklassen (implementerer Dequegrensesnittet) for å implementere stabeldatastrukturen i Java.

For å lære mer, besøk:

  • Java ArrayDeque
  • Hvorfor bruke Deque over Stack?

Interessante artikler...