O que é Stack Class em Java e como usá-lo?



A classe Stack em Java é uma parte da estrutura Collection que simplifica operações como push, pop, etc. Este artigo se concentra na classe stack com exemplos.

As estruturas de dados têm sido uma bênção para o mundo da programação, pois simplificam a programação em grande medida. A classe Stack em Java faz parte do que simplifica várias operações como push, pop, etc. Neste artigo, exploramos esse conceito em detalhes. As dicas a seguir serão exploradas neste artigo:

Vamos começar.





O que é uma classe Stack em Java?

Uma pilha é um estrutura de dados que segue LIFO (Last In First Out). Java Stack Class se enquadra na estrutura básica de hierarquia de coleção, na qual você pode realizar as operações básicas, como push, pop, etc.A estrutura de coleção Java inclui interfaces e Aulas . Agora, vamos ter uma visão clara de como a classe de pilha em Java é organizada na hierarquia do framework de coleções Java.

Hierarquia - Classe Stack em Java - Edureka



Na hierarquia acima, a caixa azul se refere aas diferentes interfaces e a caixa amarela definem a classe. Uma pilha em Java estende a classe vetorial que implementa ainda mais Interface de lista . Sempre que você cria uma Pilha, inicialmente ela não contém nenhum item, ou seja, a Pilha está vazia.

Seguindo em frente, vamos ver os diferentes métodos de Java Stack Class.

Métodos da classe Stack em Java

Em Java, existem principalmente 5 métodos de Stack Class.A seguir estão os métodos que estão à nossa disposição quando usamos a classe stack em Java.



Métodos Descrição

vazio()

Verifica se a pilha está vazia

empurrar()

como criar array dinâmico em java
Coloque um item no topo da pilha

pop ()

Remova o objeto da pilha

olhadinha()

Olha para o objeto de uma pilha sem removê-lo

pesquisa()

Pesquisa item na pilha para obter seu índice

Vamos entender cada um desses métodos com um exemplo programático:

package Edureka import java.io. * import java.util. * public class StackMethods {// adicionar ou empurrar o elemento no topo da pilha estática void push_method (Stack st, int n) {st.push (new Integer (n) ) System.out.println ('push (' + n + ')') System.out.println ('Pilha atual:' + st)} // Exibir elemento no topo da pilha estática void peek_method (Stack & ampampampltInteger & ampampampgt st) { Elemento inteiro = (Integer) st.peek () System.out.println ('Elemento no topo da pilha:' + elemento)} // Pesquisa o elemento na pilha estática void search_method (Stack st, int element) {Integer pos = ( Inteiro) st.search (elemento) if (pos == -1) System.out.println ('Elemento não encontrado') else System.out.println ('Elemento encontrado na posição' + pos)} // Remove o elemento do topo da pilha static void pop_method (Stack st) {System.out.print ('pop =') Inteiro n = (Inteiro) st.pop () System.out.println (n) System.out.println ( 'Pilha restante:' + st)} public static void main (String args []) {Stack st = new Stack () Sys tem.out.println ('Pilha vazia:' + 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) try {pop_method (st)} catch (EmptyStackException e) {System.out.println ('pilha vazia')}}}

Resultado:

Pilha vazia: []
empurre (4)
Pilha atual: [4]
empurre (8)
Pilha atual: [4, 8]
empurre (9)
Pilha atual: [4, 8, 9]
Elemento no topo da pilha: 9
Elemento não encontrado
O elemento é encontrado na posição 3
pop = 9
Pilha restante: [4, 8]
pop = 8
Pilha restante: [4]
pop = 4
Pilha restante: []
pop = pilha vazia

Explicação: No acima , Primeiro imprimi uma pilha vazia e adicionei alguns elementos usando o método Push. Depois que os elementos estão presentes na pilha, exibi os elementos no topo da pilha usando o método Peek. Depois disso, realizei uma pesquisa usando o método Search e, finalmente, removi os elementos da classe Java Stack usando o método Pop.

Prosseguindo com o Java Stack Class, vamos dar uma olhada em várias operações que você pode realizar enquanto implementa a classe de pilha em Java.

Operações de pilha Java:

Tamanho da pilha:

pacote Edureka import java.util.EmptyStackException import java.util.Stack public class StackOperations {public static void main (String [] args) {Stack stack = new Stack () stack.push ('1') stack.push ('2 ') stack.push (' 3 ') // Verifique se a pilha está vazia System.out.println (' A pilha Java está vazia? '+ stack.isEmpty ()) // Encontre o tamanho da pilha System.out. println ('Tamanho da pilha:' + stack.size ())}}

Resultado: A pilha Java está vazia? falso
Tamanho da pilha: 3

Iterar elementos de uma pilha Java:

  • Iterar sobre uma pilha usando iterador ()
  • Itere em uma pilha usando Java 8 forEach ()
  • Itere sobre uma pilha usando listIterator () de cima para baixo

Vamos começar a iterar elementos usando iterator ().

pacote Edureka import java.util.EmptyStackException import java.util.Iterator import java.util.Stack public class 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)} }}

Resultado:

1
2
3

Da mesma forma, você pode executar a iteração por outros métodos. Consulte o código abaixo para mais compreensão:

demo do pacote import java.util.EmptyStackException import java.util.Iterator import java.util.ListIterator import java.util.Stack public class JavaOperators {public static void main (String [] args) {Stack stack = new Stack () stack. push ('1') stack.push ('2') stack.push ('3') System.out.println ('Iterar uma pilha usando o método forEach ():') stack.forEach (n -> {System. out.println (n)}) ListIterator ListIterator = stack.listIterator (stack.size ()) System.out.println ('Iterar sobre uma pilha usando listIterator () de cima para baixo:') while (ListIterator.hasPrevious () ) {String str = ListIterator.previous () System.out.println (str)}}}

Resultado: Faça a iteração de uma pilha usando o método forEach ():
1
2
3
Itere sobre uma pilha usando listIterator () de cima para baixo:
3
2
1

Explicação: No código acima, você pode ver a iteração usando o método forEach () e, em seguida, reverter o mesmo usando listIterator () de cima para baixo da pilha.

Este é o fim do blog “Stack Class in Java”. Espero que vocês sejam claros com a estrutura de coleções Java, é hierarquia junto com os códigos de exemplo de classe Java Stack. Leia meu próximo blogem onde listei as 75 principais perguntas e respostas da entrevista que o ajudarão a se destacar no processo de entrevista.

Agora que você entendeu as coleções Java, verifique o pela Edureka, uma empresa de aprendizagem online confiável com uma rede de mais de 250.000 alunos satisfeitos espalhados por todo o mundo. O curso de certificação e treinamento Java J2EE e SOA da Edureka é projetado para estudantes e profissionais que desejam ser um desenvolvedor Java. O curso foi desenvolvido para dar a você uma vantagem inicial na programação Java e treiná-lo para os conceitos básicos e avançados de Java, juntamente com várias estruturas Java, como Hibernate e Spring.

Tem alguma questão para nós? Mencione isso na seção de comentários deste blog “Stack class in Java” e entraremos em contato com você o mais breve possível.