Sobes.tech
Junior — Middle

¿Cuál es el propósito de usar enum class en Kotlin y en qué se diferencia de las enumeraciones normales?

sobes.tech AI

Respuesta de la IA

En Kotlin, enum class se utiliza para definir un conjunto limitado de constantes, cada una de las cuales es un objeto de la clase. A diferencia de las enumeraciones normales en otros lenguajes, las clases enum de Kotlin pueden contener propiedades, métodos e implementar interfaces.

Las principales diferencias:

  • Cada constante es una instancia de la clase enum, se pueden definir propiedades y comportamientos únicos.
  • Se pueden agregar constructores y métodos.
  • Se soporta la herencia de interfaces.

Ejemplo:

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

    fun description() = "Dirección $name con un ángulo de $degrees grados"
}

fun main() {
    println(Direction.NORTH.description()) // Dirección NORTH con un ángulo de 0 grados
}

Por lo tanto, la clase enum en Kotlin es una herramienta poderosa para trabajar con un conjunto de constantes relacionadas con lógica adicional.