<aside> <img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/94dbaed9-349c-449d-bc43-25de3ae5a780/SpartaIconScale9.png" alt="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/94dbaed9-349c-449d-bc43-25de3ae5a780/SpartaIconScale9.png" width="40px" /> 수업 목표

<aside> <img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/393cd135-1603-4797-8fa6-42abcfedd782/SpartaIconS24.png" alt="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/393cd135-1603-4797-8fa6-42abcfedd782/SpartaIconS24.png" width="40px" /> 목차

</aside>

<aside> <img src="/icons/code_red.svg" alt="/icons/code_red.svg" width="40px" /> 모든 토글을 열고 닫는 단축키 Windows : Ctrl + alt + t Mac : + + t

</aside>


01. Enum (열거형)

<aside> <img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/f320911b-849d-4369-8da7-9e77c05476b7/코드스니펫.avif" alt="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/f320911b-849d-4369-8da7-9e77c05476b7/코드스니펫.avif" width="40px" />

코드스니펫

<aside> 📚

열거형은 Swift에서 특정 주제나 종류에 따라 묶을 수 있는 값들을 그룹화하고 정의하여 데이터타입으로 사용할 수 있습니다.

</aside>

enum 특징

enum 기본 선언 방법 및 사용 방법

<aside> 1️⃣

기본 선언 방법

// enum 뒤에 열거형의 이름을 작성하고 코드블록 안에서 그룹화된 값들을을 case로 작성합니다.

// 기본 선언 방법
enum Season {
    case spring
    case summer
    case autumn
    case winter
}

// 한국말로 풀어보기
// Season enum을 선언합니다.
// Season이 그룹화하여 갖고있는 값은 spring, summer, autumn, winter 입니다.

</aside>

<aside> 2️⃣

사용 방법

// 기본 사용 방법

// 기본적인 접근 방법
Season.spring // Enum의 이름뒤에 .을 찍고 데이터에 접근할 수 있습니다.
Season.summer 

// 데이터 타입(String, Int ...) 처럼 변수나 상수에 저장할 수 있습니다.

var season: Season = .spring // 데이터 타입을 Season이라고 명시한다면 
                             // Season.spring에서 Seaspn을 생략할 수 있습니다.

var summer = Season.summer // 데이터타입을 명시해서 값을 넣으면 
												   // 컴파일러가 데이터 타입을 추론해줍니다.
												   
summer = .spring // summer의 타입이 Season으로 판단되어 
                 // Season.spring에서 Season을 생략할 수 있습니다.

</aside>