Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- 빅데이터
- kotiln
- 백준
- ubuntu18.04
- 빅데이터청년인재
- 소켓통신
- DataBinding Error
- 자바
- 인공지능
- 안드로이드
- ubuntu
- 데이터청년캠퍼스
- flownet
- 딥러닝
- NEXTERS
- 머신러닝
- 알고리즘
- utuntu
- resample2d_cuda
- nvcc
- 이것만보면돼
- 넥스터즈
- cuda-10.2
- IT연합동아리
- clean architecture
- 청년인재
- sending 404
- 코틀린
- 빅데이터청년캠퍼스
- Android
Archives
- Today
- Total
보초의 코딩일기장
[Swift 입문] 열거형 본문
열거형
1 2 3 4 5 6 | enum 이름{ case name1 case name2 case name3, name4, name5 //... } | cs |
유사한 종류의 여러 값을 한 곳에 모아 정의한 것이다.
다른 언어의 열거형과는 다르게 각 케이스는 그 자체가 고유의 값이 된다. (정수값이 할당되는 것이 아님)
한줄에 한번에 정의 가능하다.
열거형의 예시를 들자면
1 2 3 4 5 6 | enum Weekday { case mon case tue case wed case thu, fri, sat, sun } | cs |
var 변수 : 열거형 타입이름 =열거형 타입이름 . 케이스이름
1 | var day: Weekday = Weekday.mon |
타입을 명시해주어야 한다.
선언 후에는 ( 타입이 명확하다면 ) .케이스 처럼 표현해도 무관하다.
1 | day = .tue | cs |
원시값 (rawValue)
열거형을 정수값으로 할당할 수 있는 방법이다.
정수 타입 뿐만 아니라 모든 타입을 원시값의 타입으로 지정할 수 있다.
1 2 3 4 5 6 7 8 9 | enum Fruit: Int { case apple = 0 case grape = 1 case peach } print("Fruit.peach.rawValue == \(Fruit.peach.rawValue)") // Fruit.peach.rawValue == 2 | cs |
케이스에 해당하는 값이 없을 수도 있는 경우가 발생할 수 있으므로 옵셔널 타입으로 선언하여 원시값으로 초기화를 하는 방법도 존재한다.
1 2 | let apple: Fruit? = Fruit(rawValue: 0) | cs |
메서드
열거형에는 메서드도 추가할 수 있다.
'낙서장 > edwith : swift 입문' 카테고리의 다른 글
[Swift 입문] 클래스 vs 구조체/열거형 (0) | 2018.07.17 |
---|---|
[Swift 입문] 구조체, 클래스 (0) | 2018.07.02 |
[Swift 입문] 옵셔널 (0) | 2018.07.02 |
[swift 입문] 함수 기본, 조건문 (0) | 2018.06.27 |
[swift 입문] Any, AnyObject, nil, 컬렉션타입 (0) | 2018.06.27 |
Comments