반응형
C에도 열거형이 있는듯 한데 Swift에서 처음 알게 된 개념입니다.
struct 또는 class 과 비슷하게 사용할 수 있습니다.
// 열거형
// 하나의 타입이다.
enum Numbers{
case one
case two
case three
case four
}
var specificNumber: Numbers = Numbers.two
print(specificNumber) // two
specificNumber = .four // 축약 가능
print(specificNumber) // four
// switch문 사용에 용이
switch specificNumber{
case .one, .two, .three:
print(1,2,3)
case .four:
print(4)
// 열거형의 모든 값을 정해주면 default가 필요없다.
}
// 열겨형의 선언에서 값을 정해줄 수도 있다.
enum TwoNumbers: Int {
// 값을 넣어주면 자동으로 1씩 증가한다
case one = 1
case two // = 2
case three // =3
case four
// method도 추가 가능
func exFunc() {
switch self {
case .one, .two:
print(1,2)
case .three, .four:
print(3,4)
}
}
}
// 값을 꺼내서 사용하려면 .rawValue를 붙여주면 된다.
print(TwoNumbers.three) // three
print(TwoNumbers.three.rawValue) // 3
// method 예시
TwoNumbers.one.exFunc() // 1,2 출력
반응형
'iOS > Swift' 카테고리의 다른 글
[Swift] 클래스의 상속 (0) | 2022.01.24 |
---|---|
[Swift] 클로저 (0) | 2022.01.23 |
[Swift] 구조체, 클래스, 프로퍼티, 프로퍼티 감시자 (0) | 2022.01.22 |
[Swift] 옵셔널에 대해 (0) | 2022.01.22 |
[Swift] 조건문, 반복문 (0) | 2022.01.22 |