Cuando utilizo un iterador de objetos utilizo un bucle while (como está escrito en todos los libros de aprendizaje de Java, como Pensando en Java de Bruce Eckel) :diferencia entre mover un iterador hacia adelante con una instrucción y una declaración mientras
Iterator it=...
while(it.hasNext()){
//...
}
pero en algún lugar vi que alguien utilice el bucle for:
Iterator it=...
for (Iterator it=...; it.hasNext();){
//...
}
yo no' entiende esta elección:
- Puedo utilizar el bucle for cuando tengo una colección con secuencia ordinal (como array) o con una regla especial para el paso (declarado generalmente como un simple incremento
counter++
). - Uso el mientras que el bucle cuando el bucle termina con No he tenido estas restricciones, pero solo una condición lógica para salir.
Es una cuestión de estilo de codificación sin otra causa o existe alguna otra lógica (rendimiento, por ejemplo) que yo no' sé?
Gracias por todos los comentarios
No es un ejemplo de la conversión de 'Iterator' a compatibles con for-each loop 'Iterable' en http://stackoverflow.com/questions/2598219/java-why-cant-iterate-over-an-iterator/ – Vadzim