Løkkekontroll i switch-kontekst
Skill mellom break i løkker og i switch.
Løkkekontroll i switch-kontekst er en gratis leksjon i Swift Academy på CoddyKit. Dette er leksjon 4 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Swift Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Swift Academy inneholder totalt 4 leksjoner.
break i switch
Inne i en switch avslutter break switch-casen. Swift har ikke implisitt gjennomfall, så break er vanligvis valgfritt, men tillatt.
let n = 2
switch n {
case 1:
print("one")
case 2:
print("two")
break
default:
print("other")
}Tom case med break
Bruk break for å angi eksplisitt at en case ikke skal gjøre noe. Det er tydeligere enn en tom blokk.
let code = 0
switch code {
case 0:
break // intentionally ignore
default:
print("handled", code)
}
print("after switch")break i en switch inne i en løkke
Når en switch ligger inne i en løkke, avslutter et vanlig break switch, ikke løkken.
for n in 1...4 {
switch n {
case 3:
break // exits switch only
default:
print(n)
}
}
print("loop finished")Avslutte løkken fra en switch
For å komme ut av den omsluttende løkken fra en switch må De sette en etikett på løkken og bruke break label.
loop: for n in 1...5 {
switch n {
case 3:
break loop
default:
print(n)
}
}
print("done")continue fra en switch
Et vanlig continue inne i en switch viser til den omsluttende løkken og går videre til dens neste iterasjon.
for n in 1...5 {
switch n {
case let x where x % 2 == 0:
continue
default:
print(n)
}
}Hvorfor forskjellen er viktig
Å blande switch-break og loop-break er en vanlig feil. Husk at et frittstående break i en switch bare avslutter switch-en.
for n in 1...3 {
switch n {
case 2:
break
default:
print("value", n)
}
}
print("all values processed")fallthrough
Hvis De faktisk ønsker gjennomfall, må De bruke det eksplisitte nøkkelordet fallthrough.
let n = 1
switch n {
case 1:
print("one")
fallthrough
case 2:
print("two")
default:
print("done")
}Etikettert break for tydelighet
Selv når det ikke er strengt nødvendig, dokumenterer et etikettert break at det er løkken som skal avsluttes.
scan: for value in [10, 20, 30, 40] {
switch value {
case 30:
break scan
default:
print(value)
}
}Kombinere where-klausuler
Pattern-where-klausuler sammen med continue gjør det mulig å filtrere elegant inne i en switch.
for n in 1...6 {
switch n {
case let x where x > 4:
continue
default:
print(n)
}
}Nøstet switch og løkke
Med nøstede løkker og en switch gjør etiketter målet entydig.
outer: for i in 1...3 {
for j in 1...3 {
switch j {
case 2:
break outer
default:
print(i, j)
}
}
}Beste praksis
Bruk et frittstående break bare for å forlate en switch-case. Sett alltid en etikett på løkken når hensikten er å avslutte løkken fra en switch.
main: for n in 1...5 {
switch n {
case 4:
break main
default:
print(n)
}
}Hurtigsjekk
Test break kontra loop-break.
Oppsummering
I en switch avslutter et frittstående break bare switch-casen. Swift har ikke implisitt gjennomfall; bruk fallthrough for det. For å avslutte en omsluttende løkke fra en switch setter De en etikett på løkken og bruker break label. Et frittstående continue viser fortsatt til løkken.
loop: for n in 1...4 {
switch n {
case 3: break loop
default: print(n)
}
}Lær deg Swift med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 122
- Leksjoner
- 409
Ofte stilte spørsmål
Er leksjonen «Løkkekontroll i switch-kontekst» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Swift Academy, inkludert «Løkkekontroll i switch-kontekst», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Swift Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Løkkekontroll i switch-kontekst»?
Skill mellom break i løkker og i switch. Du øver på Swift Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Swift Academy?
Ingen tidligere erfaring er nødvendig. Swift Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.
Hvor lang tid tar leksjonen «Løkkekontroll i switch-kontekst»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Swift Academy-leksjonen?
Ja. Alle Swift Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Grunnleggende om break og continue
- Merkede setninger
- Bryte ut av nøstede løkker
- Løkkekontroll i switch-kontekst