English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Istruzione continue in Swift

In questo articolo, imparerai a utilizzare la statement continue per trasferire il controllo del programma.

Quando si utilizzano cicli o statement condizionali, potrebbe essere necessario saltare alcune statement all'interno del ciclo o terminare immediatamente il ciclo senza controllare l'espressione di test.

In questo caso, verranno utilizzate le statement break e continue. Visita questa pagina per sapere di più suLa statement breakPiù informazioni.

La statement continue ferma l'esecuzione del ciclo o delle statement all'interno di una statement switch. Poi, tornerà a valutare nuovamente l'espressione di test del ciclo.

La sintassi della statement continue è:

continue

Come funziona la statement continue?

Esempio 1: Statement continue nel ciclo for di Swift

for i in 1...5 {
    if i == 4 {
        continue
    {}
    print("i = \(i)")
{}

Quando si esegue questo programma, l'output è:

i = 1
i = 2
i = 3
i = 5

Nella programma sopra, l'intervallo della sequenza da iterare è da 1 a 5.

Il valore di i viene impostato sul primo numero della sequenza range(1) e aggiornato a ogni iterazione con il numero successivo della sequenza.

Il ciclo include anche l'espressione if i == 4. Quando l'espressione ha un valore true (nella quarta iterazione), esegue la statement continue, saltando l'esecuzione della statement print("i = \(i)") e passando alla prossima iterazione (i = 5).

Esempio 2: Frase continue in Swift all'interno del ciclo while

var intialLevel:Int = -5, finalLevel:Int = 2
var currentLevel:Int = intialLevel
while currentLevel < finalLevel {
    if intialLevel < 0 {
        print("Il livello iniziale deve essere un numero positivo")
        intialLevel = 0
        currentLevel = intialLevel
        continue // Salta l'esecuzione corrente
    {}
    currentLevel += 1
    print("Livello successivo")
{}
print("Al di fuori del ciclo while")

Quando si esegue questo programma, l'output è:

Il livello iniziale deve essere un numero positivo
Livello successivo
Livello successivo
Al di fuori del ciclo while

Nel programma sopra, il ciclo while continua fino a quando currentLevel è minore di finalLevel. Poiché l'attributo intialLevel assegnato è -5 e minore di 0, viene eseguita la frase interna if.

Quando il programma raggiunge la frase continue, salta le frasi del ciclo while e poi controlla nuovamente la condizione currentLevel<finalLevel.

Esempio 3: Frase continue in Swift con cicli annidati

for j in 1...2 {
    for i in 1...5 {
        if i == 4 {
            continue
        {}
        print("i = \(i)")
    {}
    print("j = \(j)")
{}

Quando si esegue questo programma, l'output è:

i = 1
i = 2
i = 3
i = 5
j = 1
i = 1
i = 2
i = 3
i = 5

Nel programma sopra, la frase continue in if i==4 salta l'esecuzione della frase print("i=\(i)") all'interno del ciclo for interno. Tuttavia, non salta l'esecuzione del ciclo esterno for i in 1...5.

Ma cosa fare se vuoi anche saltare il ciclo esterno continue? Per questo, devi usare frasi con etichetta in Swift.

Dichiarazione con etichetta continue

Le frasi con prefisso di forma (label: Statement) sono chiamate frasi con etichetta. L'etichetta è un identificatore che puoi riferire in frasi break o continue.

Come funziona una frase con continue?

Ecco, label è un identificatore. Quando viene eseguito il comando continue, il programma salta il resto del ciclo for e si sposta alla frase che inizia con label.

Esempio 4: Esempio di istruzioni con tag continue

outerloop: for j in 1...2 {
    innerloop: for i in 1...5 {
        if i == 4 {
            continue outerloop
        {}
        print("i = \(i)")
    {}
    print("j = \(j)")
{}

Quando si esegue questo programma, l'output è:

i = 1
i = 2
i = 3
i = 1
i = 2
i = 3

Nel programma sopra, ci sono due istruzioni taggate outerloop: for j in 1...2 e innerloop: for i in 1...5.

I nomi dei tag outerloop e innerloop possono essere utilizzati insieme all'istruzione continue.

Nel programma, abbiamo utilizzato l'istruzione continue outerloop per saltare l'esecuzione delle istruzioni all'interno dei cicli esterni e interni. Durante questo processo, i valori di i e j vengono aggiornati al numero successivo nell'intervallo.