-
IOS_Swift_enum(2)IOS_Swift 2020. 1. 2. 18:17
Enum - RawValue
RawValue는 열거형의 케이스에 값을 저장하는 것을 말합니다.
enum의 타입은 String, char, Int, Dobule 등의 타입이 가능합니다.
enum:String enum-Int enum-Char enum-Dobule RawValue를 지정하는 방법은 위와 같습니다.
초기화 방법은 일반 변수,상수를 초기화할 때와 동일합니다.!
Enum - RawValue 특징
1. enum의 타입이 String일경우 Int타입으로 초기화가 불가능합니다.! 즉 서로 다른 데이터 타입으로 초기화는 불가능합니다.
2. Char타입은 무조건 케이스의 값을 지정해주어야 합니다. (3번째 이미지 참고)
3. String 타입일 경우 케이스명과 동일하게 값이 초기화됩니다.
4. Int , Dobue 형은 1씩 증가합니다. ( Int - 0 , Double - 0.0 )
Enum-String , RawValue 케이스의 RawValu의 접근을 하기 위해서는 위와 같이 enum.caseName.rawValue입니다.
그리고 위의 코드를 보면 스트링으로 아무 값을 지정을 안 하니 RawValue의 값이 case명과 동일한 것을 확인할 수 있습니다.
이버엔 Int값을 확인해 보겠습니다.
Int 데이터 타입 지정 후 RawValue를 지정 안 할 시 0부터 시작해 1씩 증가하는 것을 확인할 수 있습니다.
(** 더블형일 경우 0.0 1.0 2.0 이런 식으로 값이 증가합니다.)
RawValue의 값은 아래와 같이 비교가 가능합니다.
그 이유는 데이터의 타입이 동일하기 때문입니다.
weekDay.rawValue의 데이터 타입은 Double형입니다.
위의 이미지를 보면 타입이 Double형의 변수에 rawValue로 초기화를 하는데도 에러가 발생하지 않을걸 확인 가능합니다.
'IOS_Swift' 카테고리의 다른 글
IOS_Swift_ViewController// UIVIewController 를 알아보자(1) (0) 2020.02.14 IOS_Swift_함수(1) (0) 2020.01.17 IOS_Swift_Enum(1) (0) 2020.01.01 IOS_Swift_변수/상수/타입추론 (0) 2020.01.01 IOS_Swift_데이터타입 (Int,Double,String) (0) 2020.01.01