0Pricing
Kotlin Academy · Lesson

Enum Properties and Methods

Add behavior.

Enums Can Hold Data

Enum constants can carry properties. Declare a constructor on the enum class and pass values when listing each constant.

enum class Coin(val cents: Int) {
    PENNY(1), NICKEL(5), DIME(10)
}

fun main() {
    println(Coin.DIME.cents)
}

Constructor Parameters

The values in parentheses after each constant are arguments to the enum constructor. They become read-only properties on that constant.

enum class Planet(val gravity: Double) {
    EARTH(9.8), MOON(1.6)
}

fun main() {
    println(Planet.MOON.gravity)
}

All lessons in this course

  1. Defining Enums
  2. Enum Properties and Methods
  3. Enums with when
  4. Enum Values and Ordinals
← Back to Kotlin Academy