Swift/기초
Swift 기초 다지기 - 열거형 (Enum)
박신혁
2024. 10. 6. 02:00
열거형 (Enum)
연관된 값들을 묶어서 관리할 수 있는 타입
// 열거형 정의 및 사용
enum Week {
case monday
case tuesday
case wednesday
case thursday
case friday
case saturday
case sunday
}
let today: Week = .monday // monday
enum 키워드로 선언, 각 항목은 고유하며 요일 같은 일정한 값들을 정의할 때 유용하다.
열거형의 원시값 (Raw Value)
각 케이스는 미리 정의된 원시값을 가질 수 있다.
// 열거형의 원시값 (Raw Values)
enum Week: String {
case monday = "월요일"
case tuesday = "화요일"
case wednesday = "수요일"
case thursday = "목요일"
case friday = "금요일"
case saturday = "토요일"
case sunday = "일요일"
}
let today = Week.monday.rawValue // 월요일
// rawValue가 "월요일" 인 케이스를 찾는 초기화, 해당 rawValue가 존재하지 않으면 nil 반환
let todayCase = Week(rawValue: "월요일") // monday
열거형의 연관값 (Associated Values)
각 케이스는 추가적인 연관값을 가질 수 있으며, 이를 이용해서 더 많은 정보를 부여할 수 있다.
// 열거형의 연관값 및 열거형 활용
// 열거형 FastFood
enum FastFood {
case buger
case pizza(size: String)
}
// 주문 함수
func order(food: FastFood) {
switch food{
case .buger:
print("햄버거 주문")
case .pizza(let size):
print("피자 \(size) 사이즈 주문")
}
}
// 사용
let orderPizza = FastFood.pizza(size: "라지")
order(food: orderPizza) // 피자 라지 사이즈 주문
728x90