Coding Memo
Kotlin 열거형 클래스 본문
Java에도 열거형이 있듯이 Kotlin에도 있다.
서로 연관이 있는 상수값들을 모아놓은 집합이라고 생각해도 될 것 같다. (물론 이 집합을 타입처럼 사용한다.)
상수 값을 열거할 때 이용하며, 상수 값이므로 보통 대문자로 나타낸다.
enum class
상수값은 물론, 함수도 가지고 있을 수 있다.
인자가 없는 간단한 예시이다.
fun main() {
var c: UserColor = UserColor.RED
println(c)
if (c.isRed()) {
println("c is Red")
}
}
enum class UserColor {
RED,
GREEN,
BLUE;
fun isRed(): Boolean = this == UserColor.RED
}
인자를 포함하여 생성할 수 있다.
fun main() {
var feel = Feeling.HAPPY
println(feel)
feel = Feeling.FUN
println(feel.now)
println(feel.dgr)
feel.upDgr()
println(feel.dgr)
}
enum class Feeling(val now: String, var dgr: Int) {
HAPPY("happy", 1),
SAD("sad", 1),
FUN("fun", 1);
fun upDgr() {
this.dgr++
}
}
인자의 값을 변경하는 것도 가능하고, 따로 출력하는 것도 가능하다.
클래스처럼 사용하면 된다.
'Language > Kotlin' 카테고리의 다른 글
Kotlin 리스트 (Collections) (0) | 2021.01.10 |
---|---|
Kotlin 데이터 클래스 (0) | 2021.01.08 |
Kotlin 중첩 / 내부 클래스 (0) | 2021.01.08 |
Kotlin 함수 파라미터 (0) | 2021.01.06 |
Kotlin null 값 (0) | 2021.01.06 |