Tässä artikkelissa opit käyttämään tauko-lauseita ohjelman hallinnan siirtämiseen.
Kun työskentelet silmukoiden tai ehdollisten lauseiden kanssa, saatat joutua ohittamaan joitain lauseita silmukan sisällä tai lopettamaan silmukan välittömästi tarkistamatta testilauseketta
Tällaisissa tapauksissa käytetään keskeytys- ja jatko-lauseita. Opit jatkoilmoituksesta seuraavasta luvusta.
Break-lause lopettaa silmukan tai switch-käskyn suorittamisen. Sitten se hyppää seuraavaan lauseeseen silmukan tai kytkimen lauseen jälkeen.
Break-lauseen syntaksi on:
tauko
Kuinka tauko-lause toimii?
Esimerkki 1: Swift break -lauseke silmukalle
for i in 1… 5 ( if i == 4 ( break ) print("i = (i)") ) print("The end")
Kun suoritat ohjelmaa, tulos on:
i = 1 i = 2 i = 3 Loppu
Yllä olevassa ohjelmassa iteroitava sekvenssi on alue 1-5.
I: n arvo asetetaan alueen ensimmäiseksi numeroksi (1) ja päivitetään kunkin iteraation alueen seuraavaan numeroon.
Silmukka sisältää myös lausekkeen if i == 4
. Lauseke, kun se arvioidaan tosi (4. iteraatiossa), suorittaa break
käskyn ja for-in -silmukka päättyy.
Sitten se hyppää silmukan ulkopuolelle tulostamaan loppu .
Esimerkki 2: Swift break -lauseke silmukassa
var currentLevel:Int = 1, finalLevel:Int = 2 var isLifeAvailable = true while (isLifeAvailable) ( if currentLevel> finalLevel ( print("Game Completed. No level remaining") break ) //play game and go to next level currentLevel += 1 print("next level") ) print("outside of while loop")
Kun suoritat ohjelmaa, tulos on:
seuraava taso seuraava taso Peli suoritettu. Ei tasoa jäljellä silmukan ulkopuolella
Edellä olevassa ohjelmassa while-silmukan testilauseke on aina true
.
Kun currentLevel on suurempi kuin finalLevel, break
lauseke if-lohkon sisällä suoritetaan. Sitten ohjelma irtoaa (lopettaa) while-silmukan ja suorittaa lauseet silmukan jälkeen, ts. print("outside of while loop")
…
Esimerkki 3: Swift break -lauseke sisäkkäisillä silmukoilla
for j in 1… 2 ( for i in 1… 5 ( if i == 4 ( break ) print("i = (i)") ) print("j = (j)") )
Kun suoritat ohjelmaa, tulos on:
i = 1 i = 2 i = 3 j = 1 i = 1 i = 2 i = 3 j = 2
Yllä olevassa ohjelmassa ainoan break
sisällä oleva lause if i == 4
lopettaa sisäisen silmukan suorittamisen for i in 1… 5
. Se jatkaa kuitenkin ulomman silmukan suorittamista for j in 1… 2
.
Mutta entä jos haluat break
myös ulkokerroksen for j in 1… 2
. Tätä varten käytämme merkittyjä lauseita Swiftissä.
Merkitty lausunto rikkoutuneella
Lausekkeet, joissa on etuliitteitä muodossa (label: Statement), kutsutaan tunnisteina. Tunniste on tunniste, johon voit viitata myöhemmin tauko- tai jatko-lauseissa. Lisätietoja merkityistä lauseista on Swift-merkittyissä lausunnoissa.
Kuinka taukotunnisteellinen lause toimii?
Tässä tarra on tunniste. Kun break
käsky suoritetaan, se lopettaa silmukat tarran sisällä, ja ohjelma hyppää lauseeseen heti merkityn lauseen jälkeen.
Esimerkki 4: Tunnisteellinen lauseke, jossa on katkos
outerloop: for j in 1… 2( innerloop: for i in 1… 5 ( if i == 4 ( break outerloop ) print("i = (i)") ) print("j = (j)") )
Kun suoritat ohjelmaa, tulos on:
i = 1 i = 2 i = 3
Yllä olevassa ohjelmassa on kaksi merkittyä lausetta outerloop: for j in 1… 2
ja innerloop: for i in 1… 5
.
Etiketin nimiä ulompi ja sisempi voi käyttää break
lausekkeen kanssa.
Lausunto break outerloop
lopettaa molemmat silmukat ja lopettaa ohjelman.
Jos tunnet muun ohjelmointikielen, kuten C, C ++, Java jne., break
Käskyä käytetään lopettamaan kytkinlauseke. Mutta Wwiftissä switch-lause lopettaa suorituksen heti, kun ensimmäinen vastaava kytkentätapa on valmis. Siksi on valinnaista lisätä tauko Swiftin kytkentäkoteloon. Jos haluat lisätietoja, käy Swift-kytkimen lausunnossa.