Kotlin fortsätt (med exempel)

I den här handledningen lär du dig att fortsätta att hoppa över den aktuella iterationen av en slinga. Du kommer också att lära dig om fortsatta etiketter i den här artikeln.

Antag att du arbetar med öglor. Ibland är det önskvärt att hoppa över den aktuella iterationen av slingan.

I sådana fall continueanvänds. Den continuekonstruktionen hoppar över det aktuella iteration av den inneslutande slinga, och kontroll av programmet hoppar till slutet av slingan.

Hur fortsätter fungerar?

Det används nästan alltid med if … annars konstruera. Till exempel,

 medan (testExpression1) (// codes1 if (testExpression2) (fortsätt) // codes2)

Om testExpression2 utvärderas till true, continueutförs som hoppar alla koder inuti whileslingan efter det för det iteration.

Exempel: Kotlin fortsätt

 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ör programmet blir resultatet:

1 Trycks alltid. 1 Trycks inte alltid. 2 Alltid tryckt. 3 Alltid tryckt. 4 Alltid tryckt. 5 Trycks alltid. 5 Trycks inte alltid.

När värdet på i är större än 1 och mindre än 5 continuekörs, vilket hoppar över körningen av

 println ("$ i Trycks inte alltid.")

påstående.

Men uttalandet

 println ("$ i Alltid tryckt.")

körs i varje iteration av slingan eftersom detta uttalande existerar före continuekonstruktionen.

Exempel: Beräkna endast summan av positiva siffror

Programmet nedan beräknar summan av maximalt 6 positiva siffror som skrivits in av användaren. Om användaren anger ett negativt tal eller noll hoppas det över från beräkningen.

Besök Kotlin Basic Input Output för att lära dig mer om hur du tar in input från användaren.

 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ör programmet blir resultatet:

 Ange ett heltal: 4 Ange ett heltal: 5 Ange ett heltal: -50 Ange ett heltal: 10 Ange ett heltal: 0 Ange ett heltal: 12 summa = 31

Kotlin Labeled fortsätt

Vad du hittills har lärt dig är omärkt form av continue, som hoppar över aktuell iteration av närmaste slutna slinga. continuekan också användas för att hoppa över iterationen av önskad slinga (kan vara yttre slinga) med hjälp av continueetiketter.

Hur fungerar fortsättningen märkt?

Etiketten i Kotlin börjar med en identifierare som följs av @.

Här är outerloop @ en etikett som är markerad på yttre while loop. Nu, genom att använda continuemed etiketten ( continue@outerloopi det här fallet), kan du hoppa över körningen av koder för den specifika slingan för den iterationen.

Exempel: märkt fortsätt

 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ör programmet blir resultatet:

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

Användningen av märkt continueavråds ofta eftersom det gör din kod svår att förstå. Om du befinner dig i en situation där du måste använda märkt continue, omformulera din kod och försök att lösa den på ett annat sätt för att göra den mer läsbar.

Det finns 3 strukturella hoppa uttryck i Kotlin: break, continueoch return. För att lära dig mer om breakoch returnuttryck, besök:

  • Kotlin paus
  • Kotlin-funktion

Intressanta artiklar...