Kotlin fortsæt (med eksempler)

I denne vejledning lærer du at fortsætte med at springe den aktuelle iteration af en loop over. Du vil også lære om fortsatte etiketter i denne artikel.

Antag at du arbejder med sløjfer. Det er undertiden ønskeligt at springe den aktuelle iteration af sløjfen over.

I et sådant tilfælde continueanvendes. Den continuekonstruktion springer den aktuelle iteration af omsluttende løkke, og styringen af programmet hopper til slutningen af løkken krop.

Hvordan fortsætter fungerer?

Det bruges næsten altid med if… else konstruere. For eksempel,

 mens (testExpression1) (// codes1 if (testExpression2) (continue) // codes2)

Hvis testExpression2 evalueres til true, continueudføres der, som springer alle koder inde i whilesløjfen efter den til den iteration.

Eksempel: Kotlin fortsætter

 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 kører programmet, vil output være:

1 Altid udskrevet. 1 Ikke altid udskrevet. 2 Altid udskrevet. 3 Altid udskrevet. 4 Altid udskrevet. 5 Trykt altid. 5 Ikke altid udskrevet.

Når værdien af ​​i er større end 1 og mindre end 5, continueudføres, hvilket springer udførelsen af

 println ("$ i Ikke altid udskrevet.")

udmelding.

Imidlertid erklæringen

 println ("$ i Altid udskrevet.")

udføres i hver iteration af sløjfen, fordi denne erklæring eksisterer før continuekonstruktionen.

Eksempel: Beregn kun summen af ​​positive tal

Programmet nedenfor beregner summen af ​​maksimalt 6 positive tal indtastet af brugeren. Hvis brugeren indtaster et negativt tal eller nul, springes det over fra beregningen.

Besøg Kotlin Basic Input Output for at lære mere om, hvordan du tager input fra brugeren.

 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 kører programmet, vil output være:

 Indtast et heltal: 4 Indtast et heltal: 5 Indtast et heltal: -50 Indtast et heltal: 10 Indtast et heltal: 0 Indtast et heltal: 12 sum = 31

Kotlin-mærket fortsæt

Det, du hidtil har lært, er umærket form for continue, som springer igangværende iteration af den nærmeste lukkende sløjfe. continuekan også bruges til at springe iteration af den ønskede sløjfe over (kan være ydre sløjfe) ved hjælp af continueetiketter.

Hvordan mærket fortsætter fungerer?

Etiket i Kotlin starter med en identifikator, der efterfølges af @.

Her er outerloop @ en etiket, der er markeret ved den ydre mens loop. Nu ved at bruge continuemed etiketten ( continue@outerloopi dette tilfælde) kan du springe over udførelsen af ​​koder for den specifikke sløjfe til den iteration.

Eksempel: mærket fortsæt

 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 kører programmet, vil output være:

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

Brugen af ​​mærket continuefrarådes ofte, da det gør din kode vanskelig at forstå. Hvis du er i en situation, hvor du skal bruge mærket continue, skal du omlægge din kode og prøve at løse den på en anden måde for at gøre den mere læselig.

Der er 3 strukturelle hoppe udtryk i Kotlin: break, continueog return. For at lære om breakog returnudtryk, besøg:

  • Kotlin pause
  • Kotlin-funktion

Interessante artikler...