Sobes.tech
Junior — Middle

Aký je účel použitia triedy enum v Kotlin a ako sa líši od bežných výčtov?

sobes.tech AI

Odpoveď od AI

V Kotlinu se enum class používa na definovanie obmedzeného súboru konštánt, z ktorých každá je objektom triedy. Na rozdiel od bežných výčtov v iných jazykoch môžu triedy enum v Kotlin obsahovať vlastnosti, metódy a implementovať rozhrania.

Hlavné rozdiely:

  • Každá konštanta je inštanciou triedy enum, môže mať jedinečné vlastnosti a správanie.
  • Môžu sa pridávať konštruktory a metódy.
  • Podporuje dedičstvo rozhraní.

Príklad:

enum class Direction(val degrees: Int) {
    NORTH(0),
    EAST(90),
    SOUTH(180),
    WEST(270);

    fun description() = "Smer $name s uhlom $degrees stupňov"
}

fun main() {
    println(Direction.NORTH.description()) // Smer NORTH s uhlom 0 stupňov
}

Preto je trieda enum v Kotlinu mocným nástrojom na prácu so súborom súvisiacich konštánt s pridanou logikou.