Aquí discutiremos las diferencias entre Iterator y ListIterator. Ambas interfaces se utilizan para atravesar, pero todavía hay pocas diferencias en cómo se pueden usar para atravesar una colección. Le recomendaría que siga los siguientes tutoriales para comprender mejor estas interfaces antes de buscar las diferencias.
Java: iterador
Java – ListIterator
Iterador vs ListIterator
1) El iterador se utiliza para cruzar List
es Set
ambas cosas.
Podemos usar ListIterator para atravesar List
simplemente no podemos cruzar Set
utilizando ListIterator.
2) Solo podemos cruzar hacia adelante usando Iterator.
Usando ListIterator, podemos atravesar una List en ambas direcciones (hacia adelante y hacia atrás).
3) No podemos obtener índices mientras usamos Iterator
Podemos obtener índices en cualquier momento mientras recorremos una lista usando ListIterator. Los métodos nextIndex () y previousIndex () se utilizan para esto.
4) No podemos agregar elementos a la colección a medida que la recorre usando Iterator, arroje ConcurrentModificationException cuando lo intente.
Podemos agregar elementos en cualquier momento mientras recorremos una lista usando ListIterator.
5) No podemos reemplazar el valor del elemento existente cuando usamos Iterator.
Usando el método set (E e) de ListIterator podemos reemplazar el último elemento devuelto por los métodos next () o previous ().
6) Métodos de iterador:
- hasNext ()
- El siguiente()
- para eliminar()
Métodos ListIterator:
- agregar (E y)
- hasNext ()
- hasPrevious ()
- El siguiente()
- nextIndex ()
- el anterior()
- previousIndex ()
- para eliminar()
- establecer (E y)