У овом упутству ћемо научити о класи Јава Стацк и њеним методама уз помоћ примера.
Оквир Јава колекција има класу Stack
која пружа функционалност структуре података стека.
Stack
Класа проширује Vector
класу.
Имплементација стека
У стеку, елементи се чувају и приступа им се на начин Ласт Ин Фирст Оут . Односно, елементи се додају на врх стека и уклањају са врха стека.
Креирање стека
Да бисмо креирали стек, прво морамо да увозимо java.util.Stack
пакет. Једном када увозимо пакет, ево како можемо створити стек у Јави.
Stack stacks = new Stack();
Овде Type
означава тип стека. На пример,
// Create Integer type stack Stack stacks = new Stack(); // Create String type stack Stack stacks = new Stack();
Методе стека
Пошто Stack
проширује Vector
класу, наслеђује све методе Vector
. Да бисте сазнали више о различитим Vector
методама, посетите Јава Вецтор Цласс.
Поред ових метода, Stack
класа укључује још 5 метода по којима се разликује Vector
.
пусх () метода
Да бисмо додали елемент на врх стека, користимо push()
методу. На пример,
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); ) )
Оутпут
Стог: (пас, коњ, мачка)
метода поп ()
Да бисмо уклонили елемент са врха стека, користимо pop()
методу. На пример,
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); ) )
Оутпут
Почетни стог: (пас, коњ, мачка) Уклоњени елемент: мачка
метода завиривања ()
peek()
Метод враћа објекат са врха стека. На пример,
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); ) )
Оутпут
Стог: (пас, коњ, мачка) Елемент на врху: мачка
метода претраживања ()
За претрагу елемента у стеку користимо search()
методу. Враћа положај елемента са врха стека. На пример,
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); ) )
Оутпут
Стог: (пас, коњ, мачка) Положај коња: 2
празна () метода
Да бисмо проверили да ли је стек празан или не, користимо empty()
методу. На пример,
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); ) )
Оутпут
Гомила: (пас, коњ, мачка) Је ли стог празан? лажно
Користите АрраиДекуе уместо Стацк-а
Stack
Класа обезбеђује директну примену структуре гомила података. Међутим, препоручује се да се не користи. Уместо тога, користите ArrayDeque
класу (имплементира Deque
интерфејс) за примену структуре података стека у Јави.
Да бисте сазнали више, посетите:
- Јава АрраиДекуе
- Зашто користити Декуе преко Стацк-а?