복합 케이스와 fallthrough
케이스를 결합하고 fallthrough를 의도적으로 사용합니다.
복합 케이스와 fallthrough은(는) CoddyKit의 무료 Swift Academy 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Swift Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Swift Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
복합 케이스
쉼표로 구분하면 하나의 케이스에서 여러 값과 일치시킬 수 있습니다. case "a", "b":처럼 작성합니다. 나열된 모든 값에 같은 코드가 실행됩니다.
let letter = "a"
switch letter {
case "a", "e", "i", "o", "u":
print("Vowel")
default:
print("Consonant")
}복합 케이스를 사용하는 이유
복합 케이스를 사용하면 동일한 본문을 반복해서 작성하지 않아도 됩니다. 같은 방식으로 동작해야 하는 값들을 하나로 묶습니다.
let day = 6
switch day {
case 6, 7:
print("Weekend")
case 1, 2, 3, 4, 5:
print("Weekday")
default:
print("Invalid day")
}범위와 복합 케이스 함께 사용하기
하나의 복합 케이스 안에서 범위와 개별 값을 섞어 사용할 수 있습니다.
let code = 204
switch code {
case 200, 201, 204:
print("Success")
case 400...499:
print("Client error")
default:
print("Other")
}복합 케이스와 바인딩
복합 케이스에서 바인딩할 때는 모든 대안이 같은 이름을 같은 형식으로 바인딩해야 합니다.
let point = (0, 5)
switch point {
case (let v, 0), (0, let v):
print("On an axis at distance \(v)")
default:
print("Off the axes")
}폴스루 소개
Swift의 케이스는 기본적으로 다음 케이스로 넘어가지 않습니다. fallthrough 키워드를 사용하면 실행이 다음 케이스로 계속 이어집니다.
let n = 1
switch n {
case 1:
print("one")
fallthrough
case 2:
print("two")
default:
print("done")
}폴스루의 작동 방식
fallthrough는 조건을 다시 확인하지 않고 무조건 다음 케이스 본문으로 이동합니다. 의도적으로 사용하십시오.
let level = 3
switch level {
case 3:
print("Level 3 perks")
fallthrough
case 2:
print("Level 2 perks")
fallthrough
case 1:
print("Level 1 perks")
default:
break
}폴스루는 패턴을 무시합니다
폴스루는 다음 패턴 검사를 건너뛰므로 다음 케이스가 값 바인딩에 의존해서는 안 됩니다. 그렇지 않으면 컴파일되지 않습니다.
let x = 10
switch x {
case 10:
print("ten")
fallthrough
default:
print("reached default")
}복합 케이스와 폴스루 비교
여러 값에 같은 코드를 실행하려면 복합 케이스를 우선 사용하십시오. 실제로 연속 실행이 필요한 경우에만 fallthrough를 사용하십시오.
let grade = "B"
switch grade {
case "A", "B":
print("Passing")
default:
print("Other")
}폴스루로 누적하기
폴스루는 티어에서 아래 단계로 내려가며 모든 혜택을 나열하는 것과 같은 누적 효과에 유용합니다.
let tier = 2
var perks = [String]()
switch tier {
case 2:
perks.append("Premium")
fallthrough
case 1:
perks.append("Basic")
default:
break
}
print(perks)두 방식 함께 사용하기
하나의 스위치에서 각 상황에 가장 적합한 방식으로 복합 케이스와 폴스루를 함께 사용할 수 있습니다.
let n = 0
switch n {
case 0:
print("zero")
fallthrough
case 1, 2:
print("small")
default:
print("large")
}가독성 참고 사항
대부분의 언어가 폴스루를 기본 동작으로 사용하기 때문에, 폴스루는 독자를 당황하게 할 수 있습니다. 의도를 주석으로 설명하거나 가능하면 복합 케이스를 사용하십시오.
let status = "warn"
switch status {
case "warn", "error":
print("Needs attention")
default:
print("OK")
}간단히 확인하기
복합 케이스와 폴스루를 확인해 보십시오.
정리: 복합 케이스와 폴스루
쉼표로 구분된 복합 case를 사용하면 여러 값에서 하나의 본문을 공유할 수 있습니다. 실행이 의도적으로 다음 case로 이어지기를 원할 때만 명시적인 fallthrough 키워드를 사용하십시오.
let n = 2
switch n {
case 1, 2: print("small")
default: print("big")
}AI 튜터와 함께 Swift을(를) 배우세요 — 무료
브라우저에서 실제 코드를 작성하고 실행하며, 24/7 AI 튜터로부터 즉각적인 도움을 받고, 웹이나 앱에서 중단한 부분부터 계속 학습하세요.
- 코스
- 122
- 레슨
- 409
자주 묻는 질문
“복합 케이스와 fallthrough” 강의는 무료인가요?
네 — “복합 케이스와 fallthrough” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Swift Academy 강의 전체를 잠금 해제할 수 있습니다. Swift Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“복합 케이스와 fallthrough”에서 뭘 배우나요?
케이스를 결합하고 fallthrough를 의도적으로 사용합니다. 브라우저에서 직접 실행하는 실습 코드로 Swift Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Swift Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Swift Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.
“복합 케이스와 fallthrough” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Swift Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Swift Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 값에 대한 모든 경우를 다루는 switch
- 범위와 튜플 매칭하기
- 값 바인딩과 where 절
- 복합 케이스와 fallthrough