Ebben az oktatóanyagban példák segítségével megismerhetjük a Java Stack osztályt és annak módszereit.
A Java gyűjtemények keretrendszernek van egy elnevezett osztálya, Stack
amely biztosítja a verem adatstruktúrájának funkcionalitását.
Az Stack
osztály kiterjeszti az Vector
osztályt.
Verem megvalósítása
A veremben az elemeket a Last In First Out módon tárolják és elérik . Vagyis elemeket adnak a verem tetejére, és eltávolítják a verem tetejéről.
Verem létrehozása
Verem létrehozásához java.util.Stack
először importálnunk kell a csomagot. A csomag importálása után a következőképpen hozhatunk létre verem a Java-ban.
Stack stacks = new Stack();
Itt Type
jelzi a verem típusát. Például,
// Create Integer type stack Stack stacks = new Stack(); // Create String type stack Stack stacks = new Stack();
Verem módszerek
Mivel Stack
kiterjeszti az Vector
osztályt, örökli az összes metódust Vector
. A különböző Vector
módszerek megismeréséhez látogasson el a Java Vector osztályra.
Ezen módszerek mellett az Stack
osztály további 5 módszert tartalmaz, amelyek megkülönböztetik Vector
.
push () módszer
Egy elem hozzáadásához a verem tetejére a push()
módszert használjuk . Például,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); ) )
Kimenet
Verem: (Kutya, Ló, Macska)
pop () módszer
Egy elem eltávolításához a verem tetejéről a pop()
módszert alkalmazzuk. Például,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Initial Stack: " + animals); // Remove element stacks String element = animals.pop(); System.out.println("Removed Element: " + element); ) )
Kimenet
Kezdeti verem: (kutya, ló, macska) eltávolított elem: macska
peek () módszer
A peek()
metódus egy objektumot ad vissza a verem tetejéről. Például,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // Access element from the top String element = animals.peek(); System.out.println("Element at top: " + element); ) )
Kimenet
Verem: (kutya, ló, macska) elem tetején: macska
keresés () módszer
A verem egyik elemének kereséséhez a search()
módszert használjuk . Visszaadja az elem helyzetét a verem tetejéről. Például,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // Search an element int position = animals.search("Horse"); System.out.println("Position of Horse: " + position); ) )
Kimenet
Verem: (Kutya, Ló, Macska) A Ló helyzete: 2
üres () módszer
A empty()
módszer használatával ellenőrizzük, hogy a verem üres-e vagy sem . Például,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // Check if stack is empty boolean result = animals.empty(); System.out.println("Is the stack empty? " + result); ) )
Kimenet
Verem: (Kutya, Ló, Macska) Üres a verem? hamis
A Stack helyett használja az ArrayDeque alkalmazást
Az Stack
osztály biztosítja a verem adatstruktúrájának közvetlen megvalósítását. Javasoljuk azonban, hogy ne használja. Ehelyett használja az ArrayDeque
osztályt (megvalósítja az Deque
interfészt) a verem adatstruktúrájának megvalósításához a Java-ban.
További információért látogasson el ide:
- Java ArrayDeque
- Miért érdemes használni a Deque-et a Stack felett?