¿Qué es Stack Class en Java y cómo usarlo?



La clase de pila en Java es parte del marco de la colección que simplifica operaciones como push, pop, etc. Este artículo se centra en la clase de pila con ejemplos.

Las estructuras de datos han sido de gran ayuda para el mundo de la programación, ya que simplifican la programación en gran medida. La clase de pila en Java es parte de que simplifica varias operaciones como push, pop, etc. En este artículo exploramos este concepto en detalle. En este artículo se explorarán los siguientes consejos:

Empecemos.





¿Qué es una clase de pila en Java?

Una pila es una estructura de datos que sigue a LIFO (último en entrar, primero en salir). Java Stack Class se incluye en el marco de jerarquía de colección básico en el que puede realizar las operaciones básicas como push, pop, etc. Sabemos queEl marco de la colección de Java incluye interfaces y clases . Ahora, tengamos una visión clara de cómo se organiza la clase de pila en Java en la jerarquía del marco de colecciones de Java.

Jerarquía - Clase de pila en Java - Edureka



lanzar vs lanzar vs lanzar en java

En la jerarquía anterior, el cuadro azul se refiere alas diferentes interfaces y el cuadro amarillo define la clase. Una pila en Java extiende la clase de vector que implementa aún más Interfaz de lista . Siempre que crea una pila, inicialmente no contiene ningún elemento, es decir, la pila está vacía.

Continuando, veamos los diferentes métodos de Java Stack Class.

Métodos de la clase de pila en Java

En Java, hay principalmente 5 métodos de Stack Class.Los siguientes son los métodos que están a nuestra disposición cuando usamos la clase de pila en Java.



Métodos Descripción

vacío()

Comprueba si la pila está vacía

empujar()

Coloca un artículo en la parte superior de la pila.

pop()

Retire el objeto de la pila

ojeada()

Mira el objeto de una pila sin quitarlo

buscar()

Busca elementos en la pila para obtener su índice

Entendamos cada uno de estos métodos con un ejemplo programático:

package Edureka import java.io. * import java.util. * public class StackMethods {// agregar o empujar el elemento en la parte superior de la pila static void push_method (Stack st, int n) {st.push (new Integer (n) ) System.out.println ('push (' + n + ')') System.out.println ('Current Stack:' + st)} // Mostrar elemento en la parte superior de la pila static void peek_method (Stack & ampampampltInteger & ampampampgt st) { Integer element = (Integer) st.peek () System.out.println ('Elemento en la parte superior de la pila:' + elemento)} // Busca el elemento en la pila static void search_method (Stack st, int element) {Integer pos = ( Integer) st.search (element) if (pos == -1) System.out.println ('Element not found') else System.out.println ('Element is found at position' + pos)} // Elimina el elemento desde la parte superior de la pila static void pop_method (Stack st) {System.out.print ('pop =') Integer n = (Integer) st.pop () System.out.println (n) System.out.println ( 'Pila restante:' + st)} public static void main (String args []) {Stack st = new Stack () Sys tem.out.println ('Pila vacía:' + 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) intente {pop_method (st)} catch (EmptyStackException e) {System.out.println ('pila vacía')}}}

Salida:

Pila vacía: []
empujar (4)
Pila actual: [4]
empujar (8)
Pila actual: [4, 8]
empujar (9)
Pila actual: [4, 8, 9]
Elemento en la parte superior de la pila: 9
Elemento no encontrado
El elemento se encuentra en la posición 3
pop = 9
Pila restante: [4, 8]
pop = 8
Pila restante: [4]
pop = 4
Pila restante: []
pop = pila vacía

Explicación: En lo de arriba , Primero imprimí una pila vacía y agregué algunos elementos usando el método Push. Una vez que los elementos están presentes en la pila, he mostrado los elementos en la parte superior de la pila usando el método Peek. Después de eso, realicé la búsqueda usando el método Search y finalmente eliminé los elementos en la clase Java Stack usando el método Pop.

Continuando con la clase de pila de Java, echemos un vistazo a varias operaciones que puede realizar al implementar la clase de pila en Java.

Operaciones de pila de Java:

Tamaño de la pila:

paquete 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 ') // Comprueba si la pila está vacía System.out.println (' ¿Está vacía la pila Java? '+ stack.isEmpty ()) // Encuentra el tamaño de la pila System.out. println ('Tamaño de la pila:' + stack.size ())}}

Salida: ¿Está vacía la pila de Java? falso
Tamaño de la pila: 3

Iterar elementos de una pila de Java:

  • Iterar sobre una pila usando iterador ()
  • Iterar sobre una pila usando Java 8 forEach ()
  • Iterar sobre una pila usando listIterator () de arriba a abajo

Comencemos a iterar elementos usando iterator ().

paquete 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)} }}

Salida:

1
2
3

Del mismo modo, puede realizar la iteración mediante otros métodos. Consulte el siguiente código para obtener más información:

paquete demo 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 ('Itere una pila usando el método forEach ():') stack.forEach (n -> {System. out.println (n)}) ListIterator ListIterator = stack.listIterator (stack.size ()) System.out.println ('Iterar sobre una pila usando listIterator () de arriba a abajo:') while (ListIterator.hasPrevious () ) {String str = ListIterator.previous () System.out.println (str)}}}

Salida: Itere una pila usando el método forEach ():
1
2
3
Iterar sobre una pila usando listIterator () de arriba a abajo:
3
2
1

Explicación: En el código anterior, puede ver la iteración usando el método forEach () y luego revertir la misma usando listIterator () de arriba a abajo de la pila.

Este es el final del blog 'Stack Class in Java'. Espero que tengan claro el marco de las colecciones de Java, su jerarquía junto con los códigos de ejemplo de la clase Java Stack. Lee mi próximo blogen donde he enumerado las 75 preguntas y respuestas principales de la entrevista que lo ayudarán a diferenciarse en el proceso de la entrevista.

Ahora que ha entendido las colecciones de Java, consulte la por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. El curso de certificación y capacitación Java J2EE y SOA de Edureka está diseñado para estudiantes y profesionales que desean ser desarrolladores de Java. El curso está diseñado para darle una ventaja en la programación de Java y capacitarlo para los conceptos básicos y avanzados de Java junto con varios marcos de Java como Hibernate y Spring.

Tienes una pregunta para nosotros? Menciónelo en la sección de comentarios de este blog de 'Pila de clases en Java' y nos pondremos en contacto con usted lo antes posible.