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



El blog Iterator in Java le dará una introducción adecuada a lo que es un iterador y cómo usarlos en Java con algunos ejemplos.

Si está trabajando en un y digamos que desea imprimir una secuencia, ahí es donde Iterator en Java entra en escena. De esta manera, puede obtener la secuencia incluso sin agregar la declaración de impresión para todas y cada una de las líneas. Entonces, aprendamos sobre Iterator en .

A continuación se muestran los temas que cubriré en este módulo:





¡Empecemos!

¿Qué es un iterador?

Java admite principalmente cuatro cursores diferentes. Son a saber:



  • Enumeración
  • Iterador
  • ListIterator
  • Disidente

Cada uno de estos cursores Java tiene algunas ventajas e inconvenientes. Nos centraremos en Iterator en este artículo.

Ahora bien, ¿qué es un iterador en Java?

Iterador es una interfaz que pertenece a un marco de colección. Le permite atravesar la colección, accede al elemento de datos y elimina los elementos de datos de la colección.



cadena hasta la fecha en java

También se considera un iterador universal, ya que puede aplicarlo a cualquier objeto. Mediante el uso de un iterador, puede realizar operaciones de lectura y eliminación. Esta es una versión mejorada de Enumeración con las funcionalidades adicionales de remoción de un elemento.

Métodos de iterador de Java

El iterador de Java tiene 4 métodos en total. Vamos a entenderlos en detalle.

MétodosDescripción
forEachRemaining (Consumeraction)Realiza las acciones en cada uno de los elementos hasta que todos los elementos hayan sido procesados. También hasta que la acción arroje una excepción.
hasNext ()Esta devoluciones un valor verdadero si se encuentra una gran cantidad de elementos durante la iteración.
Siguiente()Esta devoluciones el siguiente elemento especificado durante la iteración.
eliminar()Este método relimina el elemento actual. Lanza IllegalStateException si se intenta llamar a remove () que no está precedido por una llamada a next ().
booleano hasNext ()Esto devuelve verdadero si la iteración tiene más elementos.

Ejemplo:

class Método {public static void main (String [] args) ArrayList list = new ArrayList () list.add ('E') list.add ('D') list.add ('U') list.add ('R ') list.add (' E ') list.add (' K ') list.add (' A ') // Iterador para recorrer la lista Iterador iterador = list.iterator () System.out.println (' Elementos de lista : ') while (iterator.hasNext ()) System.out.print (iterator.next () +' ') System.out.println ()}}

Salida: EDUREKA

Echemos un vistazo a ListIterator en Java.

ListIterator en Java

en el grupo constante de cadenas, no habrá dos objetos de cadena que tengan el mismo contenido.

ListIterator en Java es un iterador que permite a los usuarios atravesar la colección en ambas direcciones. Contiene los siguientes métodos:

MétodosMétodo y descripción
añadir vacío (objeto obj) Inserta obj en la lista delante del elemento que será devuelto por la próxima llamada a next ().
booleano hasNext () Devuelve verdadero si existe el siguiente elemento. De lo contrario, devuelve falso.
booleano hasPrevious () Devuelve verdadero si hay un elemento anterior. De lo contrario, devuelve falso.
Objeto siguiente () Devuelve el siguiente elemento. Se lanza una NoSuchElementException si no hay el siguiente elemento.
int nextIndex () Devuelve el índice del siguiente elemento. Si no hay el siguiente elemento, devuelve el tamaño de la lista.
Objeto anterior () Devuelve el elemento anterior. Se lanza una NoSuchElementException si no hay un elemento anterior.
int previousIndex () Devuelve el índice del elemento anterior. Si no hay un elemento anterior, devuelve -1.
anular eliminar () Elimina el elemento actual de la lista. Se lanza una IllegalStateException si se llama a remove () antes de que se invoque next () o previous ().
conjunto vacío (Objeto obj) Asigna obj al elemento actual. Este es el último elemento devuelto por una llamada a next () o previous ().

Ejemplo:

public class Lists {public static void main (String args []) {// Crear una lista de arreglos ArrayList al = new ArrayList () // agregar elementos a la lista de arreglos al.add ('E') al.add ('D ') al.add (' U ') al.add (' R ') al.add (' E ') al.add (' K ') al.add (' A ') // Use el iterador para mostrar el contenido de al System.out.print ('Contenido original de al:') Iterador itr = al.iterator () while (itr.hasNext ()) {Elemento de objeto = itr.next () System.out.print (elemento + '' )} System.out.println () // Modifica los objetos que se están iterando ListIterator litr = al.listIterator () while (litr.hasNext ()) {Elemento de objeto = litr.next () litr.set (elemento + '+') } System.out.print ('Contenido modificado de al:') itr = al.iterator () while (itr.hasNext ()) {Elemento de objeto = itr.next () System.out.print (elemento + '') } System.out.println () // Ahora, muestra la lista al revés System.out.print ('Lista modificada al revés:') while (litr.hasPrevious ()) {Elemento de objeto = litr.previous () System.out. print (elemento + '')} System.out.println ()}}

Salida:

Originalcontenido de al:E D U R E K A
Modificadocontenido de al:ES+re+U+R+ES+A+ A+
Modificadolista al revés:A+A+ES+R+U+re+ Y +

clase mutable en java ejemplo

Ahora, echemos un vistazo a las ventajas y limitaciones de esta interfaz de iterador en Java.

Ventajas de Iterator en Java

Iterator en Java tiene las siguientes ventajas.

  • Puede utilizar estos iteradores para cualquier clase de colección.
  • Iterator en Java admite ambos leer tanto como eliminar operaciones.
  • Si esta usando en bucle No puedes actualice (agregue / elimine) la colección mientras que con la ayuda de un iterador puede actualizar fácilmente la colección.
  • Es un cursor universal para la API de colección.
  • Los nombres de los métodos son muy simples y muy fáciles de usar.

Limitaciones de Iterator en Java

Los iteradores en Java tienen los siguientes inconvenientes:

  • Solo puede realizar una iteración en dirección de avance, es decir, un iterador unidireccional.
  • El iterador no admite el reemplazo y la adición de un nuevo elemento.
  • ListIterator es el iterador más poderoso pero solo es aplicable para clases implementadas List. Por tanto, no es un iterador universal.
  • Cuando utiliza operaciones CRUD, no admite las operaciones de creación y actualización.
  • Cuando lo compara con Spliterator, no le permite iterar elementos en paralelo. Esto significa que solo admite iteración secuencial.
  • No admite un mejor rendimiento para iterar un gran volumen de datos.

Esto nos lleva al final de este artículo donde hemos aprendido cómo funciona el iterador en Java. Espero que tengas claro todo lo que se ha compartido contigo en este tutorial.

Si encuentra relevante este artículo sobre 'Iterador en Java', consulte la 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.

Estamos aquí para ayudarlo en cada paso de su viaje, además de esto, creamos un plan de estudios 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.

Si encuentra alguna pregunta, no dude en hacer todas sus preguntas en la sección de comentarios de 'Iterador en Java' y nuestro equipo estará encantado de responder.