Šioje pamokoje pavyzdžių pagalba sužinosime apie „Java Stack“ klasę ir jos metodus.
„Java“ kolekcijų sistemoje yra klasė, pavadinta, Stackkuri suteikia rietuvės duomenų struktūros funkcionalumą.
StackKlasė praplečia Vectorklasę.

„Stack“ įgyvendinimas
Šūsnyje elementai saugomi ir prieinami „ Last In First Out“ būdu. Tai yra, elementai pridedami prie kamino viršaus ir pašalinami iš kamino viršaus.

„Stack“ sukūrimas
Norėdami sukurti kaminą, pirmiausia turime importuoti java.util.Stackpaketą. Kai importuosime paketą, štai kaip galime sukurti „Java“ šūsnį.
Stack stacks = new Stack();
Čia Typenurodo kamino tipą. Pavyzdžiui,
// Create Integer type stack Stack stacks = new Stack(); // Create String type stack Stack stacks = new Stack();
Stack metodai
Kadangi klasė Stackpratęsiama Vector, ji paveldi visus metodus Vector. Norėdami sužinoti apie įvairius Vectormetodus, apsilankykite „Java Vector Class“.
Be šių metodų, Stackklasėje yra dar 5 metodai, nuo kurių jis skiriasi Vector.
stumti () metodas
Norėdami pridėti elementą į kamino viršų, mes naudojame push()metodą. Pavyzdžiui,
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); ) )
Rezultatas
Krovinys: (šuo, arklys, katė)
pop () metodas
Norėdami pašalinti elementą iš kamino viršaus, mes naudojame pop()metodą. Pavyzdžiui,
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); ) )
Rezultatas
Pradinis kaminas: (šuo, arklys, katė) pašalintas elementas: katė
žvilgtelėti () metodas
peek()Metodas grąžina iš kamino viršuje objektą. Pavyzdžiui,
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); ) )
Rezultatas
Šūsnis: (šuo, arklys, katė) elementas viršuje: katė
paieška () metodas
Norėdami ieškoti elemento kamino, mes naudojame search()metodą. Jis grąžina elemento padėtį iš kamino viršaus. Pavyzdžiui,
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); ) )
Rezultatas
Krovinys: (šuo, arklys, katė) arklio padėtis: 2
tuščias () metodas
Norėdami patikrinti, ar kaminas tuščias, ar ne, mes naudojame empty()metodą. Pavyzdžiui,
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); ) )
Rezultatas
Šūsnis: (Šuo, arklys, katinas) Ar kaminas tuščias? melagingas
Vietoj „Stack“ naudokite „ArrayDeque“
StackKlasė suteikia tiesioginį įgyvendinimą kamino duomenų struktūros. Tačiau rekomenduojama jo nenaudoti. Vietoj to, naudokite ArrayDequeklasę (įgyvendina Dequesąsają), kad įdiegtumėte „Java“ kamino duomenų struktūrą.
Norėdami sužinoti daugiau, apsilankykite:
- „Java ArrayDeque“
- Kodėl verta naudoti „Deque“ per „Stack“?








