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 Stack
funksjonaliteten til stabeldatastrukturen.
Den Stack
klasse utvider Vector
klasse.
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.Stack
pakken. Når vi først har importert pakken, kan du lage en stabel i Java.
Stack stacks = new Stack();
Her Type
angir bunktypen. For eksempel,
// Create Integer type stack Stack stacks = new Stack(); // Create String type stack Stack stacks = new Stack();
Stakkmetoder
Siden Stack
utvider Vector
klassen, arver den alle metodene Vector
. For å lære om forskjellige Vector
metoder, besøk Java Vector Class.
I tillegg til disse metodene Stack
inkluderer 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 Stack
klasse gir den direkte implementering av stabelen datastrukturen. Det anbefales imidlertid å ikke bruke den. Bruk i stedet ArrayDeque
klassen (implementerer Deque
grensesnittet) for å implementere stabeldatastrukturen i Java.
For å lære mer, besøk:
- Java ArrayDeque
- Hvorfor bruke Deque over Stack?