Co je Stack Class v Javě a jak ji používat?



Třída zásobníku v Javě je součástí rámce kolekce, který zjednodušuje operace jako push, pop atd. Tento článek se zaměřuje na třídu zásobníku s příklady.

Datové struktury byly přínosem pro svět programování, protože do značné míry zjednodušují programování. Třída zásobníku v Javě je součástí což zjednodušuje různé operace, jako je push, pop atd. V tomto článku podrobně prozkoumáme tento koncept. V tomto článku budou prozkoumány následující ukazatele:

Začněme.





Co je to Stack Class v Javě?

Zásobník je a datová struktura který následuje po LIFO (Last In First Out). Java Stack Class spadá pod základní Framework Hierarchy Framework, ve kterém můžete provádět základní operace jako push, pop atd. Víme, žeRámec kolekce Java obsahuje rozhraní a třídy . Pojďme si teď udělat jasný pohled na to, jak je třída zásobníku v Javě uspořádána v hierarchii rámců kolekce Java.

Hierarchie - Stack Class in Java - Edureka



Ve výše uvedené hierarchii odkazuje modré polerůzná rozhraní a žluté pole definuje třídu. Zásobník v Javě rozšiřuje třídu vektorů, která dále implementuje Seznam rozhraní . Kdykoli vytvoříte zásobník, zpočátku neobsahuje žádnou položku, tj. Zásobník je prázdný.

Pokračujeme, podívejme se na různé metody třídy Java Stack Class.

Metody třídy zásobníku v Javě

V Javě existuje hlavně 5 metod Stack Class.Následují metody, které máme k dispozici, když používáme třídu zásobníku v Javě.



jak obrátit řetězec v pythonu

Metody Popis

prázdný()

Zkontroluje, zda je zásobník prázdný

tlačit()

Položte položku do horní části stohu

pop ()

Odstraňte předmět ze stohu

nahlédnout ()

Podívá se na objekt zásobníku, aniž by jej odstranil

Vyhledávání()

Hledá položku v zásobníku a získá její index

Pojďme pochopit každou z těchto metod pomocí programového příkladu:

balíček Edureka import java.io. * import java.util. * veřejná třída StackMethods {// přidat nebo posunout prvek v horní části zásobníku static void push_method (Stack st, int n) {st.push (new Integer (n) ) System.out.println ('push (' + n + ')') System.out.println ('Current Stack:' + st)} // Zobrazit prvek v horní části zásobníku static void peek_method (Stack & ampampampltInteger & ampampampgt st) { Integer element = (Integer) st.peek () System.out.println ('Element on top top:' + element)} // Hledá 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)} // Odstraní prvek z horní části zásobníku static void pop_method (Stack st) {System.out.print ('pop =') Integer n = (Integer) st.pop () System.out.println (n) System.out.println ( 'Zbývající zásobník:' + st)} public static void main (String args []) {Stack st = new Stack () Sys tem.out.println ('Prázdný 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) zkuste {pop_method (st)} chytit (EmptyStackException e) {System.out.println ('prázdný zásobník')}}}

Výstup:

Prázdný zásobník: []
tlačit (4)
Aktuální zásobník: [4]
tlačit (8)
Aktuální zásobník: [4, 8]
tlačit (9)
Aktuální zásobník: [4, 8, 9]
Prvek na vrcholu zásobníku: 9
Prvek nebyl nalezen
Prvek se nachází na pozici 3
pop = 9
Zbývající zásobník: [4, 8]
pop = 8
Zbývající zásobník: [4]
pop = 4
Zbývající zásobník: []
pop = prázdný zásobník

Vysvětlení: Ve výše uvedeném , Nejprve jsem vytiskl prázdný zásobník a přidal několik prvků pomocí metody Push. Jakmile jsou prvky v zásobníku, zobrazil jsem je v horní části zásobníku pomocí metody Peek. Poté jsem provedl vyhledávání pomocí metody Hledat a nakonec odstranil prvky ve třídě Java Stack pomocí metody Pop.

Pokračujeme ve třídě Java Stack, pojďme se podívat na různé operace, které můžete provádět při implementaci třídy zásobníku v Javě.

Operace Java Stack:

Velikost stohu:

balíček Edureka import java.util.EmptyStackException import java.util.Stack veřejná třída StackOperations {public static void main (String [] args) {Stack stack = new Stack () stack.push ('1') stack.push ('2 ') stack.push (' 3 ') // Zkontrolujte, zda je zásobník prázdný System.out.println (' Je zásobník Java prázdný? '+ stack.isEmpty ()) // Zjistěte velikost zásobníku System.out. println ('Velikost zásobníku:' + stack.size ())}}

Výstup: Je zásobník Java prázdný? Nepravdivé
Velikost zásobníku: 3

Iterovat prvky zásobníku Java:

  • Iterace nad zásobníkem pomocí iterátoru ()
  • Iterace nad zásobníkem pomocí Java 8 forEach ()
  • Iterujte nad zásobníkem pomocí listIterator () shora dolů

Začněme iterovat prvky pomocí iterátoru ().

balíček Edureka import java.util.EmptyStackException import java.util.Iterator import java.util.Stack veřejná třída 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)} }}

Výstup:

jeden
2
3

Podobně můžete provést iteraci jinými metodami. Další porozumění najdete v níže uvedeném kódu:

balíček demo import java.util.EmptyStackException import java.util.Iterator import java.util.ListIterator import java.util.Stack veřejná třída JavaOperators {public static void main (String [] args) {Stack stack = new Stack () stack. push ('1') stack.push ('2') stack.push ('3') System.out.println ('Iterovat zásobník pomocí metody forEach ():') stack.forEach (n -> {System. out.println (n)}) ListIterator ListIterator = stack.listIterator (stack.size ()) System.out.println ('Iterovat přes Stack pomocí listIterator () shora dolů:') while (ListIterator.hasPrevious () ) {String str = ListIterator.previous () System.out.println (str)}}}

Výstup: Iterace zásobníku pomocí metody forEach ():
jeden
2
3
Iterace nad zásobníkem pomocí listIterator () shora dolů:
3
2
jeden

Vysvětlení: Ve výše uvedeném kódu můžete vidět iteraci pomocí metody forEach () a poté ji obrátit pomocí listIterator () shora dolů.

Tím končí blog „Stack Class in Java“. Doufám, že máte jasno v rámci kolekce Java, je to hierarchie spolu s ukázkovými kódy třídy Java Stack. Přečti si můj další blogna kde jsem uvedl 75 nejdůležitějších otázek a odpovědí na pohovory, které vám pomohou oddělit se v procesu pohovoru.

Nyní, když jste porozuměli Java Collection, podívejte se na Edureka, důvěryhodná online vzdělávací společnost se sítí více než 250 000 spokojených studentů rozložených po celém světě. Školicí a certifikační kurz Edureka Java J2EE a SOA je určen pro studenty a profesionály, kteří chtějí být vývojářem Java. Kurz je navržen tak, aby vám poskytl náskok v programování v Javě a naučil vás základní i pokročilé koncepty Javy spolu s různými rámci Java, jako je Hibernate & Spring.

Máte na nás dotaz? Uveďte to prosím v sekci komentářů tohoto blogu „Třída zásobníku v Javě“ a my se vám ozveme co nejdříve.