En este artículo, aprenderá a utilizar la instrucción continue para transferir el control del programa.
Mientras trabaja con bucles o declaraciones condicionales, es posible que deba omitir algunas declaraciones dentro del bucle o terminar el bucle inmediatamente sin verificar la expresión de prueba.
En tales casos, se utilizan sentencias break y continue. Visite la página para obtener más información sobre la declaración de ruptura.
La instrucción continue detiene la ejecución de instrucciones dentro de un bucle o una instrucción de cambio. Luego retrocede para evaluar nuevamente la expresión de prueba del ciclo.
La sintaxis de una instrucción continue es:
Seguir
¿Cómo funciona la instrucción Continuar?
Ejemplo 1: instrucción Swift continue en el bucle for
for i in 1… 5 ( if i == 4 ( continue ) print("i = (i)") )
Cuando ejecute el programa, la salida será:
yo = 1 yo = 2 yo = 3 yo = 5
En el programa anterior, la secuencia sobre la que se itera es un rango de 1 a 5.
El valor de i se establece en el primer número del rango (1) y se actualiza al siguiente número del rango en cada iteración.
El bucle también contiene una instrucción if con expresión i == 4
. La expresión cuando se evalúa como verdadera (en la 4ª iteración) ejecuta la continue
declaración, omite la ejecución de la declaración print("i = (i)")
y pasa a la siguiente iteración (i = 5).
Ejemplo 2: instrucción Swift continue en while loop
var intialLevel:Int = -5, finalLevel:Int = 2 var currentLevel:Int = intialLevel while currentLevel < finalLevel ( if intialLevel < 0 ( print("Starting level must be positive") intialLevel = 0 currentLevel = intialLevel continue //skips the current execution ) currentLevel += 1 print("next level") ) print("outside of while loop")
Cuando ejecute el programa, la salida será:
El nivel inicial debe ser positivo Siguiente nivel Siguiente nivel fuera del bucle while
En el programa anterior, el ciclo while se ejecuta hasta que currentLevel es menor que finalLevel. Dado que, a intialLevel se le asigna el valor -5 y es menor que 0, las sentencias dentro del if
ejecutan.
Cuando el programa llega a la continue
instrucción, omite las instrucciones del ciclo while y salta para verificar la condición currentLevel < finalLevel
nuevamente.
Ejemplo 3: instrucción Swift continue con bucles anidados
for j in 1… 2 ( for i in 1… 5 ( if i == 4 ( continue ) print("i = (i)") ) print("j = (j)") )
Cuando ejecute el programa, la salida será:
yo = 1 yo = 2 yo = 3 yo = 5 j = 1 yo = 1 yo = 2 yo = 3 yo = 5
En el programa anterior, la continue
instrucción dentro de la if i == 4
única omite la ejecución de la instrucción print("i = (i)")
dentro del bucle for interno. Sin embargo, no omite la ejecución del bucle externo for i in 1… 5
.
Pero, ¿qué continue
pasa si también quieres el bucle exterior? Para eso, necesita usar declaraciones etiquetadas en Swift.
Declaración etiquetada con continuar
Las declaraciones que tienen prefijos en el formulario (etiqueta: Instrucción) se denominan instrucción etiquetada. La etiqueta es un identificador al que puede hacer referencia más adelante en las declaraciones de interrupción o continuación. Para obtener más información sobre declaraciones etiquetadas, visite declaración etiquetada Swift.
¿Cómo funciona la declaración etiquetada con continuar?
Aquí, la etiqueta es un identificador. Cuando se continue
ejecuta la instrucción, el programa salta el resto del coe dentro del ciclo y salta a la instrucción donde comienza la etiqueta.
Ejemplo 4: Declaración etiquetada con continuar
outerloop: for j in 1… 2 ( innerloop: for i in 1… 5 ( if i == 4 ( continue outerloop ) print("i = (i)") ) print("j = (j)") )
Cuando ejecute el programa, la salida será:
yo = 1 yo = 2 yo = 3 yo = 1 yo = 2 yo = 3
En el programa anterior, hay dos declaraciones etiquetadas outerloop: for j in 1… 2
y innerloop: for i in 1… 5
.
Los nombres de las etiquetas bucle externo e interno se pueden usar con la continue
declaración.
En el programa, hemos utilizado la instrucción continue outerloop
para omitir la ejecución de declaraciones dentro de los bucles internos y externos. En el proceso, los valores de i y j se actualizan al siguiente número en el rango.