TIL
[TIL] 2023.12.04 | 키오스크(1/n) 열거형과 구조체의 사용법 차이, CaseIterable
YEN_
2023. 12. 4. 21:03
내일배움캠프 앱개발 iOS 트랙 본캠프 3주차
Today I Learned
열거형 Enum
공통된 주제에 대해 이미 정해둔 값만 선택해서 사용하고 싶을 때
데이터에 별칭을 붙여주는 개념.
enum RockPaperScissors {
case rock
case paper
case scissors
}
var person1: RockPaperScissors = .rock
var person2: RockPaperScissors = .scissors
var person3: RockPaperScissors = .paper
매번 같은 값을 사용해야 할 경우, 데이터에 별명을 붙여서 그것을 사용하면 메모리 측면에서 굉장히 좋다.
구조체 Struct
하나의 새로운 사용자 정의 데이터 타입을 만들어 주는 것
일종의 모둠 세트.
struct Person {
var name: String
var age: Int
var isAdult: Bool
}
이렇게 Person이라는 하나의 구조체를 만들어두었을 때,
언제든 Person만 선언해도 name, age, isAdult 라는 변수도 함께 선언하는 셈이다.
열거형 케이스 반복
enum Beverage: CaseIterable {
case coffee, tea, juice
}
let numberOfChoices = Beverage.allCases.count
print("\(numberOfChoices) beverages available")
// Prints "3 beverages available"
열거형 이름 뒤에 : CaseIterable를 붙이고
열거형 타입에 allCases 프로퍼티를 붙여서 열거형의 모든 케이스를 수집하고 사용할 수 있다.