¿ Por que los return no deben encontrarse dentro de los bucles ?

Iniciado por arts, 24 Octubre 2013, 01:14 AM

0 Miembros y 1 Visitante están viendo este tema.

Mitsu

Ya te respondió  тαптяαпсє.


Si te fijas bien en el bucle:

Código (=java) [Seleccionar]

for (int i=0; i<5; i++) {
if(i==3){
return;
}
}


Estoy declarando i como variable local del bucle for. Esto es, que esa variable solo existirá mientras itere el bucle. La razón es simple, no necesito cargar esa variable en la memoria.

Si hiciera algo como:

Código (=java) [Seleccionar]

public class MiClase {

private int i=0; // variable de clase.



La variable i existiría todo el tiempo y por lo tanto, estaría todo el tiempo en el Stack de la JVM inncesariamente. Esto no suele ser un problema con pequeños grupos de variables. Lo importante es analizar el problema, y determinar qué variables son necesarias para toda la case, y cuáles son necesarias solo para el bloque (método, bucle) para las necesitarán.