I denne opplæringen lærer du å fortsette å hoppe over gjeldende iterasjon av en løkke. Du vil også lære om fortsette etiketter i denne artikkelen.
Anta at du jobber med løkker. Noen ganger er det ønskelig å hoppe over gjeldende iterasjon av sløyfen.
I slike tilfeller continue
brukes. Den continue
konstruksjon som hopper over den aktuelle iterasjonen av den omsluttende sløyfe, og styringen av programmet hopper til enden av sløyfen legeme.
Hvordan fortsetter fungerer?
Den brukes nesten alltid med if… else konstruere. For eksempel,
mens (testExpression1) (// codes1 if (testExpression2) (fortsett) // codes2)
Hvis testExpression2 blir evaluert til true
, continue
blir den utført som hopper over alle kodene i while
sløyfen etter den for den iterasjonen.
Eksempel: Kotlin fortsetter
fun main(args: Array) ( for (i in 1… 5) ( println("$i Always printed.") if (i> 1 && i < 5) ( continue ) println("$i Not always printed.") ) )
Når du kjører programmet, vil utdataene være:
1 Alltid skrevet ut. 1 Ikke alltid skrevet ut. 2 Alltid skrevet ut. 3 Alltid skrevet ut. 4 Alltid skrevet ut. 5 Alltid skrevet ut. 5 Ikke alltid skrevet ut.
Når verdien av i er større enn 1 og mindre enn 5, continue
utføres, som hopper over kjøringen av
println ("$ i Ikke alltid skrevet ut.")
uttalelse.
Imidlertid uttalelsen
println ("$ i Alltid skrevet ut.")
blir utført i hver iterasjon av sløyfen fordi denne uttalelsen eksisterer før continue
konstruksjonen.
Eksempel: Beregn bare summen av positive tall
Programmet nedenfor beregner summen av maksimalt 6 positive tall som er skrevet inn av brukeren. Hvis brukeren angir et negativt tall eller null, hoppes det over fra beregningen.
Besøk Kotlin Basic Input Output for å lære mer om hvordan du tar input fra brukeren.
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") )
Når du kjører programmet, vil utdataene være:
Angi et heltall: 4 Angi et heltall: 5 Angi et heltall: -50 Skriv inn et heltall: 10 Skriv inn et heltall: 0 Angi et heltall: 12 sum = 31
Kotlin Labeled fortsett
Det du har lært til nå er umerket form av continue
, som hopper over gjeldende iterasjon av nærmeste innesluttende sløyfe. continue
kan også brukes til å hoppe over iterasjonen til ønsket sløyfe (kan være ytre sløyfe) ved å bruke continue
etiketter.
Hvordan fungerer merket fortsette?
Etiketten i Kotlin starter med en identifikator som etterfølges av @
.
Her er outerloop @ en etikett som er merket på ytre mens loop. Nå, ved å bruke continue
med etiketten ( continue@outerloop
i dette tilfellet), kan du hoppe over utførelsen av koder for den spesifikke sløyfen for den iterasjonen.
Eksempel: merket fortsett
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") ) ) )
Når du kjører programmet, vil utdataene være:
jeg = 1; j = 1 i = 2; j = 1 i = 4; j = 1 i = 5; j = 1
Bruk av merket continue
frarådes ofte, da det gjør koden vanskelig å forstå. Hvis du er i en situasjon der du må bruke merket continue
, refaktorerer du koden din og prøver å løse den på en annen måte for å gjøre den mer lesbar.
Det er 3 strukturelle hoppe uttrykk i Kotlin: break
, continue
og return
. For å lære om break
og return
uttrykk, besøk:
- Kotlin pause
- Kotlin-funksjon