Java Stack-klasse

I denne vejledning lærer vi om Java Stack-klassen og dens metoder ved hjælp af eksempler.

Java-samlingsrammerne har en klasse med navnet, Stackder giver funktionaliteten i stack-datastrukturen.

Den Stackklasse udvider Vectorklassen.

Stakimplementering

I stak gemmes og tilgås elementer på Last In First Out måde. Det vil sige, at elementer tilføjes til toppen af ​​stakken og fjernes fra toppen af ​​stakken.

Oprettelse af en stak

For at oprette en stak skal vi først importere java.util.Stackpakken. Når vi først har importeret pakken, kan du oprette en stak i Java her.

 Stack stacks = new Stack(); 

Her Typeangiver stakens type. For eksempel,

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

Stakmetoder

Da Stackudvider Vectorklassen, arver den alle metoderne Vector. For at lære om forskellige Vectormetoder, besøg Java Vector Class.

Udover disse metoder Stackinkluderer klassen 5 flere metoder, der adskiller den fra Vector.

push () metode

For at tilføje et element til toppen af ​​stakken bruger 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); ) ) 

Produktion

 Stak: (Hund, hest, kat) 

pop () Metode

For at fjerne et element fra toppen af ​​stakken bruger 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); ) ) 

Produktion

 Indledende stak: (Hund, hest, kat) Fjernet element: kat 

peek () Metode

Den peek()metode returnerer et objekt fra toppen af stakken. 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); ) ) 

Produktion

 Stak: (Hund, hest, kat) Element øverst: Kat 

søg () Metode

For at søge i et element i stakken bruger vi search()metoden. Det returnerer elementets position fra toppen af ​​stakken. 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); ) ) 

Produktion

 Stak: (Hund, hest, kat) Hestens position: 2 

tom () Metode

For at kontrollere, om en stak er tom eller ej, bruger 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); ) ) 

Produktion

Stak: (Hund, hest, kat) Er stakken tom? falsk

Brug ArrayDeque i stedet for stak

Den Stackklasse giver den direkte gennemførelse af stakken datastruktur. Det anbefales dog ikke at bruge det. Brug i stedet ArrayDequeklassen (implementerer Dequegrænsefladen) til at implementere stack-datastrukturen i Java.

For at lære mere, besøg:

  • Java ArrayDeque
  • Hvorfor bruge Deque over Stack?

Interessante artikler...