Dátové štruktúry boli prínosom pre svet programovania, pretože do veľkej miery zjednodušujú programovanie. Trieda zásobníka v Jave je súčasťou čo zjednodušuje rôzne operácie ako push, pop atď. V tomto článku podrobne skúmame tento koncept. V tomto článku budeme skúmať nasledujúce ukazovatele:
Začnime.
Čo je to trieda stacku v Jave?
Stoh je a dátová štruktúra ktorý nasleduje po LIFO (Last In First Out). Trieda Java Stack Class spadá pod základný rámec Collection Hierarchy Framework, v ktorom môžete vykonávať základné operácie, ako je push, pop atď. Vieme, žeRámec kolekcie Java obsahuje rozhrania a triedy . Poďme si teraz urobiť jasný pohľad na to, ako je trieda zásobníka v Jave usporiadaná v hierarchii rámcov zbierok Java.
Vo vyššie uvedenej hierarchii sa na modré pole vzťahujerôzne rozhrania a žlté políčko definuje triedu. Zásobník v Jave rozširuje vektorovú triedu, ktorá sa ďalej implementuje Zoznamové rozhranie . Kedykoľvek vytvoríte zásobník, spočiatku neobsahuje žiadnu položku, tj. Zásobník je prázdny.
Ďalej sa pozrime na rôzne metódy triedy Java Stack.
Metódy komínovej triedy v Jave
V Jave existuje hlavne 5 metód Stack Class.Nasledujú metódy, ktoré máme k dispozícii, keď používame triedu zásobníka v Jave.
nastaviť java classpath windows 10
Metódy | Popis |
prázdne () | Skontroluje, či je stoh prázdny |
tlačiť() | Položte položku na vrchol stohu |
pop () | Vyberte predmet zo stohu |
nahliadnuť () | Pozerá sa na objekt stohu bez jeho odstránenia |
Vyhľadávanie() | Vyhľadá položku v zásobníku a získa jej index |
Pochopme každú z týchto metód na programovom príklade:
balíček Edureka import java.io. * import java.util. * verejná trieda StackMethods {// pridať alebo poslať prvok na vrch zásobníka static void push_method (Stack st, int n) {st.push (new Integer (n) ) System.out.println ('push (' + n + ')') System.out.println ('Current Stack:' + st)} // Element zobrazenia v hornej časti stohu static void peek_method (Stack & ampampampltInteger & ampampampgt st) { Integer element = (Integer) st.peek () System.out.println ('Element on top stack:' + element)} // Vyhľadá element v zásobníku static void search_method (Stack st, int element) {Integer pos = ( Celé číslo) st.search (element) if (pos == -1) System.out.println ('Element not found') else System.out.println ('Element is found at position' + pos)} // Odstráni element z hornej časti stohu static void pop_method (Stack st) {System.out.print ('pop =') Integer n = (Integer) st.pop () System.out.println (n) System.out.println ( 'Zostávajúci zásobník:' + st)} public static void main (String args []) {Stack st = new Stack () Sys tem.out.println ('Prázdny zásobník:' + 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) vyskúšať {pop_method (st)} chytiť (EmptyStackException e) {System.out.println ('prázdny zásobník')}}}
Výkon:
Prázdny zásobník: []
tlačiť (4)
Aktuálny zásobník: [4]
zatlačiť (8)
Aktuálny zásobník: [4, 8]
zatlačiť (9)
Aktuálny zásobník: [4, 8, 9]
Prvok na vrchu stohu: 9
Prvok sa nenašiel
Prvok sa nachádza na pozícii 3
pop = 9
Zostávajúci stack: [4, 8]
pop = 8
Zostávajúci zásobník: [4]
pop = 4
Zostávajúci zásobník: []
pop = prázdny zásobník
Vysvetlenie: Vo vyššie uvedenom , Najprv som vytlačil prázdny stoh a pridal niekoľko prvkov pomocou metódy Push. Akonáhle sú prvky prítomné v zásobníku, pomocou metódy Peek som ich zobrazil na vrchu zásobníka. Potom som vykonal vyhľadávanie pomocou metódy Search a nakoniec som pomocou metódy Pop odstránil prvky v triede Java Stack.
Vpred s triedou Java Stack Class sa pozrime na rôzne operácie, ktoré môžete vykonať pri implementácii triedy stacku v Jave.
Operácie Java Stack:
Veľkosť stohu:
balík Edureka import java.util.EmptyStackException import java.util.Stack verejná trieda StackOperations {public static void main (String [] args) {Stack stack = new Stack () stack.push ('1') stack.push ('2 ') stack.push (' 3 ') // Skontrolujte, či je zásobník prázdny System.out.println (' Je zásobník Java prázdny? '+ stack.isEmpty ()) // Nájdite veľkosť priečinka Stack System.out. println ('Veľkosť stohu:' + stack.size ())}}
Výkon: Je zásobník Java prázdny? nepravdivé
Veľkosť stohu: 3
Iterovať prvky Java Stack:
- Iterácia nad zásobníkom pomocou iterátora ()
- Iterácia nad zásobníkom pomocou Java 8 forEach ()
- Iterujte nad zásobníkom pomocou listIterator () zhora nadol
Začnime iterovať prvky pomocou iterátora ().
balík Edureka import java.util.EmptyStackException import java.util.Iterator import java.util.Stack verejná trieda 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 (hodnota)} }}
Výkon:
jeden
2
3
Podobne môžete vykonať iteráciu inými metódami. Ďalšie informácie nájdete v nasledujúcom kóde:
balík demo import java.util.EmptyStackException import java.util.Iterator import java.util.ListIterator import java.util.Stack verejná trieda JavaOperators {public static void main (String [] args) {Stack stack = new Stack () stack. push ('1') stack.push ('2') stack.push ('3') System.out.println ('Iterovať zásobník pomocou metódy forEach ():') stack.forEach (n -> {System. out.println (n)}) ListIterator ListIterator = stack.listIterator (stack.size ()) System.out.println ('Iterovať nad zásobníkom pomocou listIterator () zhora nadol:') while (ListIterator.hasPrevious () ) {String str = ListIterator.previous () System.out.println (str)}}}
Výkon: Iterácia stohu pomocou metódy forEach ():
jeden
2
3
Iterácia nad zásobníkom pomocou listIterator () zhora nadol:
3
2
jeden
Vysvetlenie: Vo vyššie uvedenom kóde môžete vidieť iteráciu pomocou metódy forEach () a potom ju obrátiť pomocou listIterator () zhora nadol v zásobníku.
Týmto sa končí blog „Stack Class in Java“. Dúfam, že máte s rámcom zbierok Java jasno, je to hierarchia spolu s príkladmi kódov triedy Java Stack. Prečítajte si môj ďalší blogna kde som uviedol 75 najdôležitejších otázok a odpovedí na pohovory, ktoré vám pomôžu oddeliť sa v procese pohovoru.
Teraz, keď ste porozumeli zbierkam Java, pozrite sa na autor: Edureka, dôveryhodná online vzdelávacia spoločnosť so sieťou viac ako 250 000 spokojných študentov rozmiestnených po celom svete. Výcvikový a certifikačný kurz Edureka Java J2EE a SOA je určený pre študentov a profesionálov, ktorí chcú byť vývojármi Java. Kurz je navrhnutý tak, aby vám dal náskok v programovaní v jazyku Java a naučil vás základné aj pokročilé koncepty jazyka Java spolu s rôznymi rámcami Java, ako je Hibernate & Spring.
Máte na nás otázku? Uveďte to, prosím, v sekcii komentárov v tomto blogu „Stack class in Java“ a my sa vám ozveme čo najskôr.