Síp.. tal cual esa fue la misma explicación que nos dan a los alumnos.
Ahora yo te digo lo siguiente: estás obviando un pequeño detalle.. si yo pongo el índice en
i = 32 es EXACTAMENTE un corte brusco.. ídem estaría produciendo el
break. En tales casos, puede ser que ninguno de los dos llegue nunca a completar 32 ciclos.
Pero no hablemos de ciclos repetidos mediante condiciones de índice.. hablemos por ejemplo de lo siguiente:
Código:
while (nodo != null) {
if (nodo.getDato().equals(datoEntrada)
nodo = nodo.getEnlace();
else
nodo = null;
}
Comparémoslo con el siguiente (OJO! Son todas pequeñas cosas que se me van ocurriendo, debido a programas que he hecho en el pasado, no es que sean exactamente los mismos casos :D):
Código:
while (nodo != null) {
if (nodo.getDato().equals(datoEntrada)
nodo = nodo.getEnlace();
else
break;
}
¿Me entendés a lo que voy? Para mí es más legible (sea código mío o de otro: otro dato, NUNCA vi un código (de Java) tan prolijo como el mío, en indentación y cierta documentación y coherencia) ver un "
break" a forzar una salida del tipo anterior (primer ejemplo).
Aunque son formas y formas, jeje.. te aseguro que mi código lo entendería cualquiera! Por esto de la prolijidad y demás.. :D
Bien, gracias por contestar. Saludos!!