[kotlin] 열거형 데이터 타입 in 코틀린

코틀린은 열거형 데이터 타입을 정의할 때 사용할 수 있는 enum class 키워드를 제공합니다. 열거형 데이터 타입은 정해진 값 중 하나를 가지는 데이터 타입을 나타냅니다.

기본 형식

enum class Weekday {
    MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}

위의 예제에서 Weekday는 열거형 데이터 타입을 정의하기 위한 키워드이며, 각 요일은 해당하는 값으로 정의됩니다.

값과 메소드 추가

enum class Weekday(val isWeekend: Boolean) {
    MONDAY(false), TUESDAY(false), WEDNESDAY(false), THURSDAY(false), FRIDAY(false), SATURDAY(true), SUNDAY(true);

    fun getShortName(): String {
        return when (this) {
            MONDAY -> "Mon"
            TUESDAY -> "Tue"
            WEDNESDAY -> "Wed"
            THURSDAY -> "Thu"
            FRIDAY -> "Fri"
            SATURDAY -> "Sat"
            SUNDAY -> "Sun"
        }
    }
}

위의 예제에서 isWeekend는 각 요일의 주말 여부를 나타내는 프로퍼티로 추가되었고, getShortName는 각 요일의 짧은 이름을 반환하는 메소드로 추가되었습니다.

사용

fun main() {
    val today = Weekday.SUNDAY
    println("Today is ${today.getShortName()}, and it is weekend: ${today.isWeekend}")
}

위의 예제에서 Weekday열거형 타입을 사용하여 today 변수에 일요일을 할당하고, 해당 요일의 짧은 이름과 주말 여부를 출력했습니다.

열거형 데이터 타입은 코틀린에서 정해진 값 중 하나를 나타내는 강력한 방법을 제공하며, 손쉽게 사용할 수 있는 다양한 기능을 추가할 수 있습니다.

참고 자료: 코틀린 공식 문서