본문 바로가기

개발

Swift 열거형 (Enumerations)

728x90

Swift 열거형 (Enumerations)

Swift 열거형은 관련된 값들의 그룹을 정의하는 강력한 자료형입니다.

열거형을 사용하면 코드를 더욱 명확하고 간결하게 작성하고, 프로그램의 로직을 이해하기 쉽게 만들 수 있으며, 오류를 방지하는 데 도움이 됩니다.

1. 열거형 기본 구조

enum <열거형 이름> {

    <케이스 이름 1>, <케이스 이름 2>, ...

}

 

  • enum: 열거형을 선언하는 키워드입니다.
  • <열거형 이름>: 열거형의 이름입니다.
  • {}: 열거형의 범위를 나타냅니다.
  • <케이스 이름 1>, <케이스 이름 2>: 열거형의 각 케이스를 나타냅니다.

예시:

enum Day {

    case monday

    case tuesday

    case wednesday

    case thursday

    case friday

    case saturday

    case sunday

}

 

2. 열거형 케이스 값

  • 각 케이스는 옵션적으로 값을 가질 수 있습니다.
enum Day {

    case monday, tuesday, wednesday, thursday, friday

    case weekend(Int)  // 값을 가진 케이스

}

 

3. 원시 값 (Raw Values)

  • 각 케이스에 문자열, 정수 또는 부동 소수 값과 같은 원시 값을 할당할 수 있습니다. 원시 값은 열거형 값을 문자열로 표현하거나 숫자로 변환하는 데 사용됩니다.
enum CompassDirection: String, CaseIterable {

    case north = "북쪽"

    case south = "남쪽"

    case east = "동쪽"

    case west = "서쪽"

}

 

4. 열거형 메서드

  • 열거형에 관련된 기능을 수행하는 메서드를 추가할 수 있습니다.
enum Day {

    case monday, tuesday, wednesday, thursday, friday

    case weekend(Int)



    func isWeekend() -> Bool {

        switch self {

        case .weekend(_):

            return true

        default:

            return false

        }

    }

}



let today = Day.wednesday

let isWeekendToday = today.isWeekend()

print(isWeekendToday)   // false

 

5. 열거형 활용

  • 열거형은 다양한 상황에서 활용될 수 있습니다.
  • 상태를 나타내는 데 사용 (예: 날씨, 결과, 진행 상황 등)
  • 제한된 범위의 값을 나타내는 데 사용 (예: 요일, 방향, 등급 등)
  • 오류를 처리하는 데 사용
  • 코드 가독성을 향상시키는 데 사용

6. 참고 자료

'개발' 카테고리의 다른 글

Swift 프로퍼티 (Properties)  (1) 2024.07.05
Swift 구조체와 클래스 (Structures and Classes)  (0) 2024.07.05
Swift 클로저 (Closures in Swift)  (0) 2024.07.05
Swift 함수 (Functions)  (0) 2024.07.05
Swift 제어 흐름 (Control Flow)  (0) 2024.07.05