Closed Glsme closed 1 year ago
enum CompassDirection: CaseIterable {
case north, south, east, west
}
let caseList = CompassDirection.allcases.map { $0 }.joined(separater: ", ")
pritn(caseList)
//north, south, east, west
enum Event {
case homeScreenView
case productSelect(index: Int)
case productScreenView(product: Product)
}
모든 콜렉션의 값을 제공하는 타입
protocol CaseIterable
CaseIterable 프로토콜을 준수하는 타입은 일반적으로 연관값 없이도 순회하게 해준다. CaseIterable 타입을 사용하면 allCases
프로퍼티를 이용하여 콜렉션의 모든 타입의 케이스에 접근할 수 있다.
열거형도 각 케이스에 연관값을 저장할 수 있다. 추가적인 정보를 저장함으로써, 좀더 의미있는 데이터를 표현할 수 있다.
enum Barcode {
case upc(Int, Int, Int, Int)
case qrCode(String)
}
🗓️ 마감일
2023.01.29
💁 참여자
⚠️ 마지막으로 답변 단 사람이 이슈 close 하고 리드미에 항목 업데이트 해주세요.