Hva er Stack Class i Java og hvordan bruker jeg det?



Stack-klasse i Java er en del av Collection-rammeverket som forenkler operasjoner som push, pop, etc. Denne artikkelen fokuserer på stack-klasse med eksempler.

Datastrukturer har vært en velsignelse for programmeringsverdenen, ettersom de forenkler programmeringen i stor grad. Stack-klassen i Java er en del av som forenkler forskjellige operasjoner som push, pop, etc. I denne artikkelen utforsker vi dette konseptet i detalj. Følgende tips vil bli utforsket i denne artikkelen:

La oss komme i gang.





Hva er en Stack Class i Java?

En stabel er en data struktur som følger LIFO (Last In First Out). Java Stack Class faller inn under det grunnleggende samlingshierarki-rammeverket der du kan utføre de grunnleggende operasjonene som push, pop, etc. Vi vet atJava samling rammeverket inkluderer grensesnitt og klasser . La oss nå ha en klar oversikt over hvordan stack-klassen i Java er ordnet i Java-samlingsrammeverkets hierarki.

Hierarki - Stack Class i Java - Edureka



I ovennevnte hierarki refererer den blå boksen tilde forskjellige grensesnittene og den gule boksen definerer klassen. En stabel i Java utvider vektorklassen som videre implementeres Listegrensesnitt . Når du oppretter en stabel, inneholder den i utgangspunktet ikke noe element, dvs. stakken er tom.

La oss se de forskjellige metodene i Java Stack Class.

Metoder for stableklasse i Java

I Java er det hovedsakelig fem metoder for Stack Class.Følgende er metodene vi har til rådighet når vi bruker stackklassen i Java.



hvordan du bruker goto i python

Metoder Beskrivelse

tømme()

Sjekker om bunken er tom

trykk()

Pust et element til toppen av bunken

pop ()

Fjern gjenstanden fra bunken

kikke ()

Ser på gjenstanden til en bunke uten å fjerne den

Søk()

Søker etter element i bunken for å få indeksen

La oss forstå hver av disse metodene med et programmatisk eksempel:

pakke Edureka importer java.io. * importer java.util. * offentlig klasse StackMethods {// legg til eller skyv element på toppen av stakken statisk ugyldig 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 stakken statisk tomrom peek_method (Stack & ampampampltInteger & ampampampgt st) { Integer element = (Integer) st.peek () System.out.println ('Element on stack top:' + element)} // Søker element i stakken statisk ugyldig search_method (Stack st, int element) {Integer pos = ( Heltall) st.search (element) hvis (pos == -1) System.out.println ('Element ikke funnet') ellers System.out.println ('Element er funnet i posisjon' + pos)} // Fjerner element fra toppen av stabelen statisk tomrom pop_method (Stack st) {System.out.print ('pop =') Integer n = (Integer) st.pop () System.out.println (n) System.out.println ( 'Gjenværende stabel:' + st)} offentlig statisk ugyldig hoved (String args []) {Stack st = new Stack () Sys tem.out.println ('Tom stabel:' + 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_metode ( st) pop_method (st) pop_method (st) prøv {pop_method (st)} catch (EmptyStackException e) {System.out.println ('tom stabel')}}}

Produksjon:

Tom bunke: []
trykk (4)
Nåværende stabel: [4]
trykk (8)
Nåværende stabel: [4, 8]
trykk (9)
Nåværende stabel: [4, 8, 9]
Element på stabletopp: 9
Element ikke funnet
Element finnes i posisjon 3
pop = 9
Gjenværende bunke: [4, 8]
pop = 8
Gjenværende bunke: [4]
pop = 4
Gjenværende bunke: []
pop = tom stabel

Forklaring: I det ovennevnte , Jeg har først skrevet ut en tom bunke og lagt til noen få elementer ved hjelp av Push-metoden. Når elementene er til stede i stabelen, har jeg vist elementene på toppen av stabelen ved hjelp av Peek-metoden. Etter det har jeg utført søk ved hjelp av søkemetoden og til slutt fjernet elementene i Java Stack-klassen ved hjelp av Pop-metoden.

La oss se på forskjellige operasjoner du kan utføre mens du implementerer stack-klassen i Java.

Java Stack-operasjoner:

Størrelse på stabelen:

pakke Edureka import java.util.EmptyStackException import java.util.Stack offentlig klasse StackOperations {offentlig statisk ugyldig main (String [] args) {Stack stack = new Stack () stack.push ('1') stack.push ('2 ') stack.push (' 3 ') // Sjekk om Stack er tom System.out.println (' Er Java Stack tom? '+ stack.isEmpty ()) // Finn størrelsen på Stack System.out. println ('Størrelse på stabel:' + stack.size ())}}

Produksjon: Er Java Stack tom? falsk
Størrelse på stakken: 3

Iterate Elements of a Java Stack:

  • Iterer over en stabel med iterator ()
  • Iterer over en stabel ved hjelp av Java 8 forEach ()
  • Iterer over en stabel ved hjelp av listIterator () fra topp til bunn

La oss begynne å itere elementer ved å bruke iterator ().

pakke Edureka import java.util.EmptyStackException import java.util.Iterator import java.util.Stack offentlig klasse StackOperations {public static void main (String [] args) {Stack stack = new Stack () stack.push ('1') stack.push ('2') stack.push ('3') Iterator iterator = stack.iterator () mens (iterator.hasNext ()) {Objektverdi = iterator.next () System.out.println (verdi)} }}

Produksjon:

en
2
3

På samme måte kan du utføre iterasjonen ved andre metoder. Se koden nedenfor for mer forståelse:

pakke demo import java.util.EmptyStackException import java.util.Iterator import java.util.ListIterator import java.util.Stack offentlig klasse JavaOperators {public static void main (String [] args) {Stack stack = new Stack () stack. push ('1') stack.push ('2') stack.push ('3') System.out.println ('Iterer en stack ved hjelp av forEach () Method:') stack.forEach (n -> {System. out.println (n)}) ListIterator ListIterator = stack.listIterator (stack.size ()) System.out.println ('Iterere over en stack ved hjelp av listIterator () fra topp til bunn:') mens (ListIterator.hasPrevious () ) {String str = ListIterator.previous () System.out.println (str)}}

Produksjon: Iterer en stabel ved hjelp av forEach () -metoden:
en
2
3
Iterer over en stabel ved hjelp av listIterator () fra topp til bunn:
3
2
en

Forklaring: I koden ovenfor kan du se iterasjonen ved hjelp av forEach () -metoden og deretter reversere den samme ved å bruke listIterator () fra topp til bunn av bunken.

Dette er slutten på 'Stack Class in Java' -bloggen. Jeg håper dere er klare med rammene for Java-samlinger, det er hierarki sammen med eksemplene på Java Stack-klassen. Les neste blogg der jeg har listet opp de 75 beste intervjuspørsmålene og svarene som vil hjelpe deg å skille deg ut i intervjuprosessen.

Nå som du har forstått Java Collections, sjekk ut av Edureka, et pålitelig online læringsfirma med et nettverk med mer enn 250 000 fornøyde elever spredt over hele verden. Edurekas Java J2EE- og SOA-opplæring og sertifiseringskurs er designet for studenter og fagpersoner som ønsker å være Java-utvikler. Kurset er designet for å gi deg et forsprang i Java-programmering og trene deg for både kjerne- og avanserte Java-konsepter sammen med forskjellige Java-rammer som Hibernate & Spring.

Har du spørsmål til oss? Vennligst nevn det i kommentarfeltet i denne 'Stack-klassen i Java' -bloggen, så kommer vi tilbake til deg så snart som mulig.