Junior — Middle
Koja je svrha korišćenja enum class u Kotlin-u i kako se razlikuje od običnih enumeracija?
sobes.tech АИ
Одговор од АИ
U Kotlinu, enum class se koristi za definisanje ograničenog skupa konstanti, od kojih je svaka objekat klase. Za razliku od običnih enumeracija u drugim jezicima, Kotlin enum klase mogu sadržavati svojstva, metode i implementirati interfejse.
Glavne razlike:
- Svaka konstanta je instanca enum klase, može imati jedinstvena svojstva i ponašanje.
- Mogu se dodavati konstruktori i metode.
- Podržano je nasleđivanje interfejsa.
Primer:
enum class Direction(val degrees: Int) {
NORTH(0),
EAST(90),
SOUTH(180),
WEST(270);
fun description() = "Smer $name sa uglom od $degrees stepeni"
}
fun main() {
println(Direction.NORTH.description()) // Smer NORTH sa uglom od 0 stepeni
}
Dakle, enum class u Kotlinu je moćan alat za rad sa skupom povezanih konstanti sa dodatnom logikom.