Mikä on Stack Class Java -ohjelmassa ja miten sitä käytetään?



Java-pino-luokka on osa kokoelmakehystä, joka yksinkertaistaa toimintoja, kuten push, pop jne. Tämä artikkeli keskittyy pinoluokkaan esimerkkien avulla.

Tietorakenteet ovat olleet hyödyllinen ohjelmointimaailmalle, koska ne yksinkertaistavat ohjelmointia suuressa määrin. Stack-luokka Java on osa joka yksinkertaistaa erilaisia ​​toimintoja, kuten push, pop jne. Tässä artikkelissa tutkitaan tätä käsitettä yksityiskohtaisesti. Tässä artikkelissa tarkastellaan seuraavia ohjeita:

Aloitetaan.





Mikä on Java-pino-luokka?

Pino on tietorakenne joka seuraa LIFOa (Last In First Out). Java-pino-luokka kuuluu peruskokoelman hierarkiakehykseen, jossa voit suorittaa perustoimintoja, kuten push, pop jne. Tiedämme, ettäJava-kokoelmakehys sisältää rajapinnat ja luokat . Olkaamme nyt selkeä näkemys siitä, miten Java-pino-luokka on järjestetty Java-kokoelmien kehyshierarkiassa.

Hierarkia - pino-luokka Java - Edureka



Yllä olevassa hierarkiassa sininen ruutu viittaaeri rajapinnat ja keltainen laatikko määrittävät luokan. Java-pino laajentaa vektoriluokkaa, joka toteuttaa edelleen Luettelon käyttöliittymä . Aina kun luot pinon, aluksi se ei sisällä mitään kohdetta, eli pino on tyhjä.

Etenemme eteenpäin, katsotaanpa Java Stack Classin eri menetelmät.

Stack-luokan menetelmät Javassa

Java-ohjelmassa on pääosin viisi Stack-luokan menetelmää.Seuraavassa on menetelmiä, jotka ovat käytössämme, kun käytämme pino-luokkaa Javassa.



Menetelmät Kuvaus

tyhjä()

Tarkistaa, onko pino tyhjä

työntää()

Työnnä esine pinon yläosaan

pop ()

Poista esine pinosta

kurkistaa()

Katselee pinon kohdetta poistamatta sitä

Hae()

miten tehdä valtaa java
Hakee pinon kohdetta hakemiston saamiseksi

Ymmärretään jokainen näistä menetelmistä ohjelmallisella esimerkillä:

package Edureka import java.io. * import java.util. * public class StackMethods {// lisää tai työnnä elementtiä pinon päälle staattinen void push_method (Stack st, int n) {st.push (new Integer (n) ) System.out.println ('push (' + n + ')') System.out.println ('Nykyinen pino:' + st)} // Näyttöelementti pinon päällä Staattinen void peek_method (Stack & ampampampltInteger & ampampampgt st) { Kokonaisluku = (Kokonaisluku) st.peek () System.out.println ('Elementti pinon yläosassa:' + elementti)} // Hakee elementtiä pinosta staattinen void search_method (Stack st, int element) {Integer pos = ( Kokonaisluku) st.search (elementti) if (pos == -1) System.out.println ('Elementtiä ei löydy') else System.out.println ('Elementti löytyy sijainnista' + pos)} // Poistaa elementin pinon yläosasta staattinen tyhjä pop_method (pino) {System.out.print ('pop =') Kokonaisluku n = (Kokonaisluku) st.pop () System.out.println (n) System.out.println ( 'Jäljellä oleva pino:' + st)} public static void main (String args []) {Stack st = new Stack () Sys tem.out.println ('Tyhjä pino:' + 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) kokeile {pop_method (st)} catch (EmptyStackException e) {System.out.println ('tyhjä pino')}}}

Tuotos:

Tyhjä pino: []
työnnä (4)
Nykyinen pino: [4]
työnnä (8)
Nykyinen pino: [4, 8]
työnnä (9)
Nykyinen pino: [4, 8, 9]
Pinoamisen yläosa: 9
Elementtiä ei löydy
Elementti löytyy asemasta 3
pop = 9
Jäljellä oleva pino: [4, 8]
pop = 8
Jäljellä oleva pino: [4]
pop = 4
Jäljellä oleva pino: []
pop = tyhjä pino

Selitys: Yllä , Olen ensin tulostanut tyhjän pinon ja lisännyt muutaman elementin Push-menetelmällä. Kun elementit ovat läsnä pinossa, olen esittänyt elementit pinon päällä Peek-menetelmällä. Sen jälkeen olen suorittanut haun hakumenetelmällä ja poistanut lopuksi Java-pino-luokan elementit Pop-menetelmällä.

Jatkamme Java Stack Classin kanssa, katsotaanpa erilaisia ​​toimintoja, jotka voit suorittaa, kun toteutat pino luokan Java.

Java-pino-toiminnot:

Pinon koko:

paketti Edureka tuo java.util.EmptyStackException Tuo java.util.Stack julkinen luokka StackOperations {public static void main (String [] args) {Stack stack = new Stack () stack.push ('1') stack.push ('2 ') stack.push (' 3 ') // Tarkista, onko pino tyhjä System.out.println (' Onko Java-pino tyhjä? '+ stack.isEmpty ()) // Etsi Stack System.out -koko. println ('Pinon koko:' + pino.koko ())}}

Tuotos: Onko Java-pino tyhjä? väärä
Pinon koko: 3

Java-pinon iteraattiset elementit:

  • Toista pino iteraattorin avulla ()
  • Toista pinon yli Java 8 forEachilla ()
  • Toista pino käyttämällä listIterator () -sovellusta ylhäältä alas

Aloitetaan iteroida elementit käyttämällä iteraattoria ().

paketti Edureka import java.util.EmptyStackException import java.util.Iterator 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') Iterator iterator = stack.iterator () while (iterator.hasNext ()) {Object value = iterator.next () System.out.println (value)} }}

Tuotos:

yksi
2
3

Vastaavasti voit suorittaa iteroinnin muilla menetelmillä. Katso lisätietoja alla olevasta koodista:

package demo import java.util.EmptyStackException import java.util.Iterator import java.util.ListIterator import java.util.Stack public class JavaOperators {public static void main (String [] args) {Stack stack = new Stack () stack. työnnä ('1') pino.push ('2') pino.push ('3') System.out.println ('Iteroi pino käyttäen forEach () Method:') -pinoa forfor ((n -> {Järjestelmä out.println (n)}) ListIterator ListIterator = pino.listIterator (pino.koko ()) System.out.println ('Toista pino käyttäen listIteratoria () ylhäältä alas:') kun taas (ListIterator.hasPrevious () ) {Merkkijono str = ListIterator.previous () System.out.println (str)}}}

Tuotos: Iteroi pino forEach () -menetelmällä:
yksi
2
3
Toista pino käyttäen listIteratoria () ylhäältä alas:
3
2
yksi

Selitys: Yllä olevassa koodissa näet iteroinnin käyttäen forEach () -menetelmää ja käännä sama samalla listIterator () -toiminnon avulla pinon ylhäältä alas.

Tämä on ”Stack Class in Java” -blogin loppu. Toivottavasti teillä on selkeä Java-kokoelmakehys, sen hierarkia yhdessä Java Stack -luokan esimerkkikoodien kanssa. Lue seuraava bloginipäällä missä olen luetellut 75 parasta haastattelukysymystä ja vastausta, jotka auttavat sinua erottumaan haastatteluprosessissa.

Nyt kun olet ymmärtänyt Java-kokoelmat, tutustu Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Edurekan Java J2EE- ja SOA-koulutus- ja sertifiointikurssi on suunniteltu opiskelijoille ja ammattilaisille, jotka haluavat olla Java-kehittäjiä. Kurssi on suunniteltu antamaan sinulle etumatka Java-ohjelmointiin ja kouluttamaan sekä ydin- että edistyneitä Java-konsepteja sekä erilaisia ​​Java-kehyksiä, kuten Hibernate & Spring.

Onko sinulla kysymys meille? Mainitse se tämän 'Stack class in Java' -blogin kommenttiosassa, niin otamme sinuun yhteyttä mahdollisimman pian.