Kotlin continue (con esempi)

In questo tutorial imparerai a usare continue per saltare l'iterazione corrente di un ciclo. Inoltre, imparerai anche le etichette continue in questo articolo.

Supponi di lavorare con i loop. A volte è desiderabile saltare l'iterazione corrente del ciclo.

In tal caso, continueviene utilizzato. Il continuecostrutto salta l'iterazione corrente del ciclo che lo racchiude e il controllo del programma salta alla fine del corpo del ciclo.

Come funziona continue?

Viene quasi sempre utilizzato con il costrutto if … else. Per esempio,

 while (testExpression1) (// codici1 if (testExpression2) (continua) // codici2)

Se viene valutato testExpression2 true, continueviene eseguito che salta tutti i codici all'interno del whileciclo dopo di esso per quell'iterazione.

Esempio: Kotlin continua

 fun main(args: Array) ( for (i in 1… 5) ( println("$i Always printed.") if (i> 1 && i < 5) ( continue ) println("$i Not always printed.") ) )

Quando esegui il programma, l'output sarà:

1 Sempre stampato. 1 Non sempre stampato. 2 Sempre stampato. 3 Sempre stampato. 4 Sempre stampato. 5 Sempre stampato. 5 Non sempre stampato.

Quando il valore di i è maggiore di 1 e minore di 5, continueviene eseguito, il che salta l'esecuzione di

 println ("$ i Non sempre stampato.")

dichiarazione.

Tuttavia, la dichiarazione

 println ("$ i Sempre stampato.")

viene eseguito in ogni iterazione del ciclo perché questa istruzione esiste prima del continuecostrutto.

Esempio: calcola solo la somma di numeri positivi

Il programma sottostante calcola la somma di massimo 6 numeri positivi inseriti dall'utente. Se l'utente immette un numero negativo o zero, viene ignorato dal calcolo.

Visita Kotlin Basic Input Output per saperne di più su come ricevere input dall'utente.

 fun main(args: Array) ( var number: Int var sum = 0 for (i in 1… 6) ( print("Enter an integer: ") number = readLine()!!.toInt() if (number <= 0) continue sum += number ) println("sum = $sum") )

Quando esegui il programma, l'output sarà:

 Immettere un numero intero: 4 Immettere un numero intero: 5 Immettere un numero intero: -50 Immettere un numero intero: 10 Immettere un numero intero: 0 Immettere un numero intero: 12 sum = 31

Kotlin Labeled continua

Quello che hai imparato fino ad ora è la forma senza etichetta continue, che salta l'iterazione corrente del ciclo di chiusura più vicino. continuepuò anche essere utilizzato per saltare l'iterazione del ciclo desiderato (può essere un ciclo esterno) utilizzando le continueetichette.

Come funziona l'etichetta continua?

L'etichetta in Kotlin inizia con un identificatore seguito da @.

In questo caso outerloop @ è un'etichetta contrassegnata nel ciclo while esterno. Ora, usando continuecon l'etichetta ( continue@outerloopin questo caso), puoi saltare l'esecuzione dei codici del ciclo specifico per quell'iterazione.

Esempio: etichettato continua

 fun main(args: Array) ( here@ for (i in 1… 5) ( for (j in 1… 4) ( if (i == 3 || j == 2) continue@here println("i = $i; j = $j") ) ) )

Quando esegui il programma, l'output sarà:

i = 1; j = 1 io = 2; j = 1 io = 4; j = 1 io = 5; j = 1

L'uso di labeled continueè spesso sconsigliato in quanto rende il codice difficile da capire. Se ti trovi in ​​una situazione in cui devi usare labeled continue, rifattorizza il tuo codice e prova a risolverlo in un modo diverso per renderlo più leggibile.

Ci sono 3 espressioni salto strutturali in Kotlin: break, continuee return. Per informazioni breaked returnespressioni, visitare:

  • Pausa Kotlin
  • Funzione di Kotlin

Articoli interessanti...