티스토리 뷰

IT/Swift

Swift Enum

미닉길 2019. 5. 9. 10:27
반응형

안녕하세요. 도미닉입니다.

 

오늘은 Enum 에 대해서 알아보겠습니다.

 

Enum 은 항목을 묶어서 표현할 수 있는 타입입니다.

 

예를 들어 무게에는 kg, g, mg 등이 있습니다.

 

아래와 같이 표현할 수 있습니다.

 

Enum 을 선언할 때는 첫 글자를 대문자로 선언해주어야 합니다.

 

이러한 Enum (열거형) 을 사용하면 장점이 weight 라는 단위는 mg, g, kg 중에 하나라고 단정지을 수 있습니다.

 

이러한 점이 별거 아닌 것 같아보일 수 있겠지만 weigth 라는 변수, 상수가 다양한 타입의 무궁무진한 값을 가질 수 있는 것에서

 

우리가 예측할 수 있는 값만 가질 수 있게 된다는 것은 엄청난 차이점이고 중요한 점이라고 생각합니다.

아래에서 Enum 의 다양한 사용방법을 알아보겠습니다.

 

 

1. CaseIterable 프로토콜을 채택하면 아래와 같이 allCases 라고 반복문에 돌릴 수 있습니다.

 

2. Associate Values

 

case 뒤에 소괄호를 쓰고 타입을 쓰면 해당 타입만을 연관 값으로 가지게 설정할 수 있습니다.

 

위와 같이 여러 타입의 데이터를 저장하기 위해서 사용할 수 있습니다.

 

 

3. Raw Values

 

아예 선언할 때 case 에 타입과 데이터를 지정해줄 수 있습니다. 이러한 것을 Raw Value 라고 합니다.

 

 만약 아래 처럼 첫 값에만 1을 넣어주면 다음 케이스에 자동으로 2, 3, 4 등이 커져가며 순차적으로 저장됩니다.

아래처럼 String 타입을 가진다고 설정해놓고 값을 지정 안해주면 자동으로 자신의 이름을 String 타입으로 raw value 를 갖게 됩니다.

 

 

반응형

'IT > Swift' 카테고리의 다른 글

Swift 함수형 프로그래밍  (0) 2019.05.10
Swift Closure  (0) 2019.05.10
Swift Patterns and Pattern matching  (0) 2019.05.03
Swift Overriding and Overloading  (0) 2019.04.29
Swift Protocol and Polymorphism  (0) 2019.04.25
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
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
글 보관함