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
- Defining Enums
- Enum Properties and Methods
- Enums with when
- Enum Values and Ordinals