martes 02 de septiembre de 2008

Sentencia Continue en Java

Sirve para volver al principio del ciclo en cualquier momento, sin ejecutar las líneas que haya por debajo de la palabra continue. Esta instruccion, al ejecutarse en un ciclo while, for o do while evita las instrucciones restantes en el cuerpo del ciclo y procede con la siguiente iteración del mismo. En las instrucciones while y do while, el programa evalua la condición de continuación de ciclo inmediatamente después de que se ejecuta la instrucción continue. En una instrucción for se ejecuta la expresión de incremento y luego el programa evalua la condición de continuación del ciclo.

La sentencia de continue es de tipo de control de bucles. Dentro de la interacion en un bucle, de cualquiera de los tipos (while, do-while, for), el uso de esta sentencia rompe la interacion de dicho bucle. Provocando que se ejecute la siguiente interacion de dicho bucle, ignorando las sentencias posteriores a "continue".

for(int j = 0; j<10; j++){
sentencia 1;
sentencia 2;
sentencia 3;
continue;
sentencia 4;
}

Este bucle se ejecuta 10 veces, pero con la salvedad de que la sentencia 4 no se ejecuta ninguna vez. Es decir, se ejecutan las sentencias 1, 2 y 3 y cuando se llega a la sentencia de control continue se vuelve de nuevo a comprobar la condicion del for y en caso de cumplirse de nuevo a la sentencia 1 y así sucesivamente.

El continue se puede utilizar en el siguiente bloque:
OuterLoop: for (int i=0; i < 10; i++) {
InnerLoop: for (int j=0; j < 10: j++) {
System.out.println(i +” - ” + j);
if ( i == j ) continue OuterLoop;
}
}

Hay varias cosas para tener en cuenta con este código. Lo primero es la capacidad para etiquetar un bucle, para esto se coloca un ‘label’ separado por ‘:’ de la declaración del bucle, esto permite identificar varios bucles encadenados de tal manera que se pueda saltar hacia cualquiera de ellos con la palabra reservada ‘continue’.

La palabra reservada ‘continue’ solamente es valida dentro de una estructura de bucle, de ser escrita porque generara un error de compilación. Esta palabra reservada sirve para saltarse o parar la iteración actual del bucle pasando a donde se le indique en la etiqueta, si no se indica etiqueta se salta la iteración del bucle donde se encuentre.

Para saltarse el bucle completo es necesario recurrir a la palabra reservada ‘break’. Esta palabra reservada puede ser utilizada tanto en un bucle como en una estructura ’switch’ y tiene el mismo comportamiento dentro de los bucles que ‘continue’.

0 comentarios: