Silmukoiden ohjaus switch-kontekstissa
Erota break-rakenteen toiminta silmukoissa ja switch-rakenteissa.
Silmukoiden ohjaus switch-kontekstissa on ilmainen Swift Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Swift Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Swift Academy-kurssilla on yhteensä 4 oppituntia.
break switchissä
switch-rakenteen sisällä break päättää switch-haaran. Swiftin haarat eivät siirry automaattisesti seuraavaan haaraan, joten break on yleensä valinnainen, mutta sallittu.
let n = 2
switch n {
case 1:
print("one")
case 2:
print("two")
break
default:
print("other")
}Tyhjä case-haara breakillä
Käyttäkää break-lausetta, kun haluatte ilmaista, ettei case-haarassa tehdä mitään. Tämä on selkeämpää kuin tyhjä runko.
let code = 0
switch code {
case 0:
break // intentionally ignore
default:
print("handled", code)
}
print("after switch")break silmukan sisäisessä switchissä
Kun switch on silmukan sisällä, tavallinen break poistuu switch-rakenteesta, ei silmukasta.
for n in 1...4 {
switch n {
case 3:
break // exits switch only
default:
print(n)
}
}
print("loop finished")Silmukasta poistuminen switchistä
Jos haluatte poistua ympäröivästä silmukasta switch-rakenteen sisältä, nimetkää silmukka labelilla ja käyttäkää break label-lausetta.
loop: for n in 1...5 {
switch n {
case 3:
break loop
default:
print(n)
}
}
print("done")continue switchistä
Switch-rakenteen sisällä tavallinen continue viittaa ympäröivään silmukkaan ja siirtyy sen seuraavaan iteraatioon.
for n in 1...5 {
switch n {
case let x where x % 2 == 0:
continue
default:
print(n)
}
}Miksi erolla on merkitystä
Switch-breakin ja loop-breakin sekoittaminen on yleinen virhe. Muistakaa: paljas break switch-rakenteessa poistuu vain switch-rakenteesta.
for n in 1...3 {
switch n {
case 2:
break
default:
print("value", n)
}
}
print("all values processed")fallthrough
Jos todella haluatte haaran jatkavan seuraavaan haaraan, käyttäkää eksplisiittistä fallthrough-avainsanaa.
let n = 1
switch n {
case 1:
print("one")
fallthrough
case 2:
print("two")
default:
print("done")
}Labelilla käytetty break selkeyden vuoksi
Vaikka se ei olisi ehdottomasti tarpeen, labelilla käytetty break ilmaisee, että tarkoitatte silmukasta poistumista.
scan: for value in [10, 20, 30, 40] {
switch value {
case 30:
break scan
default:
print(value)
}
}where-lausekkeiden yhdistäminen
Pattern where-lausekkeiden ja continue-lauseen avulla voitte suodattaa tapauksia tyylikkäästi switch-rakenteen sisällä.
for n in 1...6 {
switch n {
case let x where x > 4:
continue
default:
print(n)
}
}Sisäkkäinen switch ja silmukka
Sisäkkäisten silmukoiden ja switch-rakenteen yhteydessä labelit tekevät kohteesta yksiselitteisen.
outer: for i in 1...3 {
for j in 1...3 {
switch j {
case 2:
break outer
default:
print(i, j)
}
}
}Paras käytäntö
Käyttäkää paljasta break-lausetta vain switch-haarasta poistumiseen. Nimetkää silmukka aina labelilla, kun tarkoituksena on poistua silmukasta switch-rakenteen sisältä.
main: for n in 1...5 {
switch n {
case 4:
break main
default:
print(n)
}
}Pikatarkistus
Testatkaa switch- ja loop-breakien eroa.
Kertaus
switch-rakenteessa paljas break poistuu vain switch-haarasta. Swiftissä ei ole implisiittistä haaran läpi siirtymistä; käyttäkää siihen fallthrough-lausetta. Jos haluatte poistua switch-rakenteen ympäröivästä silmukasta, nimetkää silmukka labelilla ja käyttäkää break label-lausetta. Paljas continue viittaa edelleen silmukkaan.
loop: for n in 1...4 {
switch n {
case 3: break loop
default: print(n)
}
}Opi Swift tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 122
- Oppitunnit
- 409
Usein kysytyt kysymykset
Onko oppitunti ”Silmukoiden ohjaus switch-kontekstissa” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Swift Academy-oppimispolun 3 oppituntia, myös oppitunnin “Silmukoiden ohjaus switch-kontekstissa”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Swift Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Silmukoiden ohjaus switch-kontekstissa”?
Erota break-rakenteen toiminta silmukoissa ja switch-rakenteissa. Harjoittelet Swift Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Swift Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Swift Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.
Kuinka kauan ”Silmukoiden ohjaus switch-kontekstissa”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Swift Academy-oppitunnilla?
Kyllä. Jokainen Swift Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- break- ja continue-rakenteiden perusteet
- Nimetyt lausekkeet
- Sisäkkäisistä silmukoista poistuminen
- Silmukoiden ohjaus switch-kontekstissa