Un bucle se utiliza para realizar un proceso repetidas veces. Se denomina también lazo o loop. El código incluido entre las llaves {} (opcionales si el proceso repetitivo consta de una sola línea), se ejecutará mientras se cumpla unas determinadas condiciones. Hay que prestar especial atención a los bucles infinitos, hecho que ocurre cuando la condición de finalizar el bucle (booleanExpression) no se llega a cumplir nunca. Se trata de un fallo muy típico, habitual sobre todo entre programadores poco experimentados, pero para incrementar tu experiencia de manera práctica te recomendamos este curso java presencial y 100% práctico.
Las sentencias statements se ejecutan mientras booleanExpression sea true.
while (booleanExpression) {
statements;
}
La forma general del bucle for es la siguiente:
for (initialization; booleanExpression; increment) {
statements;
}
que es equivalente a utilizar while en la siguiente forma,
initialization;
while (booleanExpression) {
statements;
increment;
}
La sentencia o sentencias initialization se ejecuta al comienzo del for, e increment después de statements. La
booleanExpression se evalúa al comienzo de cada iteración; el bucle termina cuando la expresión de comparación toma el valor false. Cualquiera
de las tres partes puede estar vacía. La initialization y el increment pueden tener varias expresiones separadas por comas.
Tenemos como ejemplo el siguiente código:
Código:
for(int i = 1, j = i + 10; i < 5; i++, j = 2*i) {
System.out.println(" i = " + i + " j = " + j);
}
Salida:
i = 1 j = 11
i = 2 j = 4
i = 3 j = 6
i = 4 j = 8
Es similar al bucle while pero con la particularidad de que el control está al final del bucle (lo que hace que el bucle se ejecute al menos
una vez, independientemente de que la condición se cumpla o no). Una vez ejecutados los statements, se evalúa la condición: si resulta true se
vuelven a ejecutar las sentencia sincluidas en el bucle, mientras que si la condición se evalúa a false finaliza el bucle. Este tipo de bucles
se utiliza con frecuencia para controlar la satisfacción de una determinada condición de error o de convergencia.
do {
statements
} while (booleanExpression);
La sentencia break es válida tanto para las bifurcaciones como para los bucles. Hace que se salga inmediatamente del bucle o bloque que se está ejecutando, sin sin realizar la ejecución del resto de las sentencias.
Dentro de la sentencia podemos incluir etiquetas que permiten indicar un lugar donde continuar la ejecución de un programa después de un break o continue. El único lugar donde se
pueden incluir etiquetas es justo delante de un bloque de código entre llaves {} (if, switch, do...while, while, for) y sólo se deben utilizar
cuando se tiene uno o más bucles (o bloques) dentro de otro bucle y se desea salir (break) o continuar con la siguiente iteración (continue) de
un bucle que no es el actual.
Por tanto, la sentencia break labelName finaliza el bloque que se encuentre a continuación de labelName. Por ejemplo, en las sentencias,
bucleI: // etiqueta o label
for ( int i = 0, j = 0; i < 100; i++){
while ( true ) {
if( (++j) > 5) { break bucleI; } // Finaliza ambos bucles
else { break; } // Finaliza el bucle interior (while)
}
}
la expresión break bucle; finaliza los dos bucles simultáneamente, mientras que la expresión break; sale del bucle while interior y seguiría con
el bucle for en i. Con los valores presentados ambos bucles finalizarán con i = 5 y j = 6 (se invita al lector a comprobarlo).
La sentencia continue (siempre dentro de al menos un bucle) permite transferir el control a un bucle con nombre o etiqueta.Por ejemplo:
bucle1:
for (int i=0; i
for (int j=0; j
if (expression) continue bucle1; then continue bucle2;
...
}
}
Para realizar todos estos bucles de manera práctica recomendamos este curso de java donde aprenderás de la mano de un experto.
Diseño de paginas Web Grupo Codesi