Vad är Stack Class i Java och hur man använder det?



Stackklass i Java är en del av Collection-ramverket som förenklar operationer som push, pop, etc. Den här artikeln fokuserar på stackklass med exempel.

Datastrukturer har varit en välsignelse för programmeringsvärlden eftersom de förenklar programmeringen till stor del. Stackklassen i Java är en del av som förenklar olika operationer som push, pop, etc. I den här artikeln utforskar vi detta koncept i detalj. Följande tips kommer att utforskas i den här artikeln:

Låt oss börja.





Vad är en stackklass i Java?

En stack är en datastruktur som följer LIFO (Last In First Out). Java Stack Class faller under det grundläggande ramverket för samlingshierarki där du kan utföra de grundläggande operationerna som push, pop osv. Vi vet attJava-samlingsramen innehåller gränssnitt och klasser . Nu ska vi få en tydlig bild av hur stackklassen i Java är ordnad i Java-samlingsramhierarkin.

Hierarki - Stackklass i Java - Edureka



I ovanstående hierarki hänvisar den blå rutan tillde olika gränssnitten och den gula rutan definierar klassen. En stack i Java utökar vektorklassen som implementeras ytterligare Listgränssnitt . När du skapar en stack innehåller den ursprungligen inget objekt, dvs. stacken är tom.

Låt oss se de olika metoderna i Java Stack Class.

Metoder för stackklass i Java

I Java finns det huvudsakligen fem metoder för Stack Class.Följande är de metoder som finns till vårt förfogande när vi använder stackklassen i Java.



konvertera binär till decimal Java
Metoder Beskrivning

tömma()

Kontrollerar om stacken är tom

tryck()

Pusta ett objekt till toppen av stacken

pop ()

Ta bort föremålet från stapeln

titt()

Tittar på objektet på en stapel utan att ta bort den

Sök()

Söker efter objekt i stacken för att få sitt index

Låt oss förstå var och en av dessa metoder med ett programmatiskt exempel:

paket Edureka importera java.io. * importera java.util. * offentlig klass StackMethods {// lägg till eller tryck element på toppen av stacken statisk ogiltig push_method (Stack st, int n) {st.push (nytt heltal (n) ) System.out.println ('push (' + n + ')') System.out.println ('Current Stack:' + st)} // Displayelement på toppen av stacken statisk ogiltig peek_method (Stack & ampampampltInteger & ampampampgt st) { Heltalselement = (Heltals) st.peek () System.out.println ('Element på stapeltopp:' + element)} // Söker element i stacken statisk ogiltig search_method (Stack st, int-element) {Heltal pos = ( Heltal) st.search (element) om (pos == -1) System.out.println ('Element hittades inte') annat System.out.println ('Elementet finns i position' + pos)} // Tar bort elementet från toppen av stacken statisk tomrum pop_method (Stack st) {System.out.print ('pop =') Heltal n = (Heltal) st.pop () System.out.println (n) System.out.println ( 'Återstående stack:' + st)} offentligt statiskt tomrum huvud (String args []) {Stack st = new Stack () Sys tem.out.println ('Tom stack:' + st) push_method (st, 4) push_method (st, 8) push_method (st, 9) peek_method (st) search_method (st, 2) search_method (st, 4) pop_method ( st) pop_method (st) pop_method (st) prova {pop_method (st)} fånga (EmptyStackException e) {System.out.println ('tom stack')}}}

Produktion:

Tom stack: []
tryck (4)
Nuvarande stack: [4]
tryck (8)
Nuvarande stack: [4, 8]
tryck (9)
Nuvarande stack: [4, 8, 9]
Element på stapeltoppen: 9
Element hittades inte
Elementet finns i position 3
pop = 9
Återstående stack: [4, 8]
pop = 8
Återstående stack: [4]
pop = 4
Återstående stack: []
pop = tom stack

Förklaring: I ovanstående , Jag har först skrivit ut en tom stack och lagt till några element med Push-metoden. När elementen är närvarande i stacken har jag visat elementen på toppen av stacken med Peek-metoden. Efter det har jag utfört sökning med sökmetoden och slutligen tagit bort elementen i Java Stack-klassen med Pop-metoden.

Låt oss ta en titt på olika operationer som du kan utföra när du implementerar stackklassen i Java.

Java Stack-operationer:

Storleken på stacken:

paket Edureka import java.util.EmptyStackException import java.util.Stack public class StackOperations {public static void main (String [] args) {Stack stack = new Stack () stack.push ('1') stack.push ('2 ') stack.push (' 3 ') // Kontrollera om stacken är tom System.out.println (' Är Java Stack tom? '+ stack.isEmpty ()) // Hitta storlek på Stack System.out. println ('Storlek på stack:' + stack.size ())}}

Produktion: Är Java Stack tom? falsk
Storlek på stack: 3

java addactionlistener (detta)

Iterera element i en Java Stack:

  • Iterera över en stack med iterator ()
  • Iterera över en stack med Java 8 forEach ()
  • Iterera över en stack med listIterator () från topp till botten

Låt oss börja iterera element med hjälp av iterator ().

paket Edureka import java.util.EmptyStackException import java.util.Iterator import java.util.Stack offentlig klass StackOperations {public static void main (String [] args) {Stack stack = new Stack () stack.push ('1') stack.push ('2') stack.push ('3') Iterator iterator = stack.iterator () medan (iterator.hasNext ()) {Objektvärde = iterator.next () System.out.println (värde)} }}

Produktion:

ett
2
3

På samma sätt kan du utföra iterationen med andra metoder. Se koden nedan för mer förståelse:

paketdemo import java.util.EmptyStackException import java.util.Iterator import java.util.ListIterator import java.util.Stack offentlig klass JavaOperators {public static void main (String [] args) {Stack stack = new Stack () stack. push ('1') stack.push ('2') stack.push ('3') System.out.println ('Iterera en stack med forEach () Method:') stack.forEach (n -> {System. out.println (n)}) ListIterator ListIterator = stack.listIterator (stack.size ()) System.out.println ('Iterera över en stack med listIterator () från topp till botten:') medan (ListIterator.hasPrevious () ) {String str = ListIterator.previous () System.out.println (str)}}

Produktion: Iterera en stack med forEach () -metoden:
ett
2
3
Iterera över en stack med listIterator () från topp till botten:
3
2
ett

Förklaring: I ovanstående kod kan du se iterationen med hjälp av forEach () -metoden och sedan vända samma med listIterator () från toppen till botten av stacken.

Detta är slutet på bloggen 'Stack Class in Java'. Jag hoppas ni är tydliga med Java-samlingsramen, det är hierarki tillsammans med Java Stack-klassens exempelkoder. Läs min nästa blogg där jag har listat de 75 bästa intervjufrågorna och svaren som hjälper dig att skilja dig från intervjuprocessen.

Nu när du har förstått Java-samlingar, kolla in av Edureka, ett pålitligt inlärningsföretag online med ett nätverk av mer än 250 000 nöjda elever spridda över hela världen. Edurekas Java J2EE- och SOA-utbildning och certifieringskurs är utformad för studenter och yrkesverksamma som vill vara Java-utvecklare. Kursen är utformad för att ge dig ett försprång till Java-programmering och träna dig för både kärn- och avancerade Java-koncept tillsammans med olika Java-ramverk som Hibernate & Spring.

Har du en fråga till oss? Vänligen nämna det i kommentarsektionen i denna 'Stack-klass i Java' -bloggen så återkommer vi till dig så snart som möjligt.