Sto convertendo un grande progetto in Kotlin. Ci sono state numerose sfide. Io sto imparando i nuovi modelli di Kotlin. Spero che ci sia un modello che posso usare per risolvere questo.Come `continue` o` break` in una istruzione `when` all'interno di un ciclo` while` usando Kotlin
Ecco il codice che sto tentando di raggiungere. Ma, continue
e break
non sono validi in una dichiarazione when
.
while (!mStopped && c.moveToNext()) {
val itemType = c.getInt()
when (itemType) {
1, 2 -> {
doSomething()
if (condition)
continue
doSomethingElse()
}
}
doTheLastStuff()
}
Questa è una versione molto ridotta del codice. Il codice java originale aveva 100 di righe all'interno delle istruzioni switch e un sacco di continue
e break
.
Quello che sto cercando di ottenere è di continuare l'esecuzione indietro alla dichiarazione while
. Qual è il modello per fare questo in Kotlin
Dopo di che, forse vedere se è possibile attivare il ciclo in una funzione ricorsiva di coda, che può essere ottimizzato con tailrec di Kotlin "annotazione". –
(Nota: questo non è un duplicato dell'altro, l'altro riguarda i loop funzionali, si tratta di loop non funzionali. Ho segnalato l'intervento del moderatore per "deselezionarlo come un duplicato, perché non lo è") –