Kotlinas tęsia (su pavyzdžiais)

Šioje pamokoje išmoksite naudoti toliau praleisti dabartinę kilpos iteraciją. Šiame straipsnyje taip pat sužinosite apie tęstines etiketes.

Tarkime, kad dirbate su kilpomis. Kartais pageidautina praleisti dabartinę kilpos iteraciją.

Tokiu atveju continueyra naudojamas. continueKonstruktas praleidžia esamą pasikartojančių dengiančiosios kilpa, ir programos valdymo šuoliai į kilpos kūno pabaigoje.

Kaip veikia toliau?

Jis beveik visada naudojamas, jei… kitaip sukonstruoti. Pavyzdžiui,

 while (testExpression1) (// kodai1 if (testExpression2) (tęsinys) // kodai2)

Jei įvertinamas „testExpression2“ true, continuevykdoma, kuri praleidžia visus kodus, esančius whilecikle, po to, kad būtų atlikta iteracija.

Pavyzdys: Kotlin tęsti

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

Kai paleisite programą, išvestis bus:

1 Visada atspausdinta. 1 Ne visada atspausdinta. 2 Visada atspausdinta. 3 Visada atspausdinta. 4 Visada atspausdinta. 5 Visada atspausdinta. 5 Ne visada spausdinama.

Kai i reikšmė yra didesnė nei 1 ir mažesnė nei 5, continuevykdoma, o tai praleidžia

 println ("$ i ne visada spausdinama.")

pareiškimas.

Tačiau teiginys

 println ("$ i visada spausdinama.")

yra vykdomas kiekvienoje kilpos iteracijoje, nes šis sakinys egzistuoja prieš continuekonstrukciją.

Pavyzdys: apskaičiuokite tik teigiamų skaičių sumą

Žemiau pateikiama programa apskaičiuoja ne daugiau kaip 6 teigiamų skaičių, kuriuos įvedė vartotojas, sumą. Jei vartotojas įveda neigiamą skaičių arba nulį, jis praleidžiamas iš skaičiavimo.

Apsilankykite „Kotlin“ pagrindiniame įvesties išvestyje, kad sužinotumėte daugiau, kaip priimti įvestį iš vartotojo.

 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") )

Kai paleisite programą, išvestis bus:

 Įveskite sveikąjį skaičių: 4 Įveskite sveiką skaičių: 5 Įveskite sveiką skaičių: -50 Įveskite sveiką skaičių: 10 Įveskite sveiką skaičių: 0 Įveskite sveiką skaičių: 12 suma = 31

„Kotlin“ pažymėti toliau

Tai, ko išmokote iki šiol, yra nepažymėta forma continue, kuri praleidžia dabartinę artimiausios uždaromosios kilpos iteraciją. continuetaip pat gali būti naudojamas norint praleisti norimos kilpos (gali būti išorinės kilpos) kartojimą naudojant continueetiketes.

Kaip veikia paženklinti tęsiniai?

Etiketė „Kotlin“ prasideda identifikatoriumi, po kurio rašoma @.

Čia „externalloop @“ yra etiketė, pažymėta išorėje, o kilpa. Dabar, naudodami continueetiketę ( continue@outerloopšiuo atveju), galite praleisti tos iteracijos konkrečios kilpos kodus.

Pavyzdys: pažymėta tęsti

 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") ) ) )

Kai paleisite programą, išvestis bus:

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

continueDažnai nerekomenduojama naudoti etikečių, nes tai sunkiai supranta jūsų kodą. Jei esate tokioje situacijoje, kai turite naudoti etiketę continue, pertvarkykite kodą ir pabandykite jį išspręsti kitu būdu, kad jis būtų lengviau įskaitomas.

Yra 3 struktūriniai šuolis išraiškas Kotlin: break, continueir return. Norėdami sužinoti daugiau breakir returnišraišką, apsilankykite:

  • Kotlino pertrauka
  • Kotlino funkcija

Įdomios straipsniai...