Java Stack-klass

I den här handledningen lär vi oss om Java Stack-klassen och dess metoder med hjälp av exempel.

Java-samlingsramen har en klass som heter Stackfunktionaliteten i stackdatastrukturen.

Den Stackklassen utökar Vectorklassen.

Stackimplementering

I stacken lagras och åtkomst till elementen på Last In First Out- sättet. Det vill säga att element läggs till på toppen av stacken och tas bort från toppen av stacken.

Skapa en stack

För att skapa en stack måste vi först importera java.util.Stackpaketet. När vi väl har importerat paketet, här är hur vi kan skapa en stack i Java.

 Stack stacks = new Stack(); 

Här Typeanger stackens typ. Till exempel,

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

Stackmetoder

Eftersom den Stackutvidgar Vectorklassen ärver den alla metoder Vector. För att lära dig om olika Vectormetoder, besök Java Vector Class.

Förutom dessa metoder Stackinnehåller klassen ytterligare 5 metoder som skiljer den från Vector.

push () Metod

För att lägga till ett element högst upp i stacken använder vi push()metoden. Till exempel,

 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

 Stack: (Hund, Häst, Katt) 

pop () Metod

För att ta bort ett element från toppen av stacken använder vi pop()metoden. Till exempel,

 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

 Initial stack: (Hund, häst, katt) Borttaget element: Cat 

peek () Metod

Den peek()metoden returnerar ett objekt från toppen av stacken. Till exempel,

 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

 Stack: (Hund, häst, katt) Element överst: Cat 

sök () Metod

För att söka efter ett element i stacken använder vi search()metoden. Det returnerar elementets position från toppen av stacken. Till exempel,

 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

 Stack: (Hund, häst, katt) Position för häst: 2 

tom () Metod

För att kontrollera om en stack är tom eller inte använder vi empty()metoden. Till exempel,

 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

Stack: (Hund, häst, katt) Är stacken tom? falsk

Använd ArrayDeque istället för Stack

Den Stackklass erbjuder det direkta genomförandet av stapeln datastrukturen. Det rekommenderas dock att du inte använder det. Använd istället ArrayDequeklassen (implementerar Dequegränssnittet) för att implementera stapeldatastrukturen i Java.

För att lära dig mer, besök:

  • Java ArrayDeque
  • Varför använda Deque over Stack?

Intressanta artiklar...