반응형
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 | //열거형 : 열거형은 연관된 항목들을 묶어서 표현할 수 있다. // 배열이나 딕셔너리 같은 타입과 다르게 프로그래머가 정의해준 항목 값 외에는 // 추가/수정이 불가하다 //그렇기 때문에 딱 정해진 값만 열거형 값에 속할 수 있다. enum School{ case primary //유치원 case elementary //초등 case middle //중등 case high //고등 case college //대학 case university // 대학교 case graduate //대학원 } //School열거형 변수의 생성 및 값 변경 var highestEducationLevel: School = School.university //같은 표현 //var highestEducationLevel: School = .university //같은 타입인 School 내부의 항목으로만 highestEducationLevel의 값을 변경 가능 highestEducationLevel = .graduate print(highestEducationLevel) //원시값: 열거형의 각 항목은 자체로도 하나의 값이지만 항목의 원시값도 가질 수 있다. //예) enum School2: String{ case primary = "유치원" case elementary = "초등" case middle = "중등" case high = "고등" case college = "대학" case university = "대학교" case graduate = "대학원" } let highestEducationLevel2: School2 = School2.university print("저의 최종학력은 \(highestEducationLevel2)") enum WeekDays: Character { case mon = "월", tue = "화", wed = "수", thu = "목", fri = "금", sat = "토", sun="일" } let today: WeekDays = WeekDays.fri print("오늘은 \(today)") //열거형의 원시 값 일부 지정 및 자동 처리 enum School3: String{ case primary = "유치원" case elementary = "초등" case middle = "중등" case high = "고등" case college case university case graduate } let level: School3 = School3.university print("저의 최종학력은\(level.rawValue)") print(School3.elementary.rawValue) // 초등학교 enum Numbers: Int { case zero case one case two case ten = 10 } print("\(Numbers.zero.rawValue)") // 0 //원시값을 통한 열거형 초기화 let one = Numbers(rawValue: 1); //one let three = Numbers(rawValue: 3); // nil print("\(one)") //print("\(three)") nil //연관값을 갖는 열거형 enum MainDish{ case pasta(taste: String) case pizza(dough:String, topping: String) case chicken(withSauce: Bool) case rice } var dinner: MainDish = MainDish.pasta(taste: "크림"); dinner = .pizza(dough: "치즈크러스트", topping:"불고기"); dinner = .chicken(withSauce: true) dinner = .rice // 출처: 스위프트 프로그래밍 | cs |
반응형
'ios 뽀개기 > 스위프트 정리' 카테고리의 다른 글
10. 옵셔널 (0) | 2017.12.04 |
---|---|
9. 연산자의 종류 (0) | 2017.11.15 |
7. 튜플 배열 딕셔너리 셋 (복습) (0) | 2017.11.14 |
6. 복습정리 (0) | 2017.11.14 |
5.함수 조건문 반복문 (0) | 2017.11.08 |
댓글