Condicionales: when

device_hub

Sintaxis con when

Valor a evaluar entre ( )

Ramas con -> en cada caso

Cuerpo entre { }

stars

Ventajas de when

Más legible que múltiples if-else

Fácil de extender nuevas ramas

Menos errores en el código

swap_horiz

Modos de Uso

arrow_forward

Sentencia - ejecuta acciones

arrow_forward

Expresión - retorna valor

WhenCondition.kt
// when como sentencia
val dia = 3
when (dia) {
1 -> println("Lunes")
2 -> println("Martes")
3 -> println("Miércoles")
else -> println("Otro día")
}
// when como expresión
val calificacion = 95
val nota = when (calificacion) {
in 90..100 -> "A"
in 80..89 -> "B"
in 70..79 -> "C"
else -> "D"
}
// when sin sujeto
val x = 10
val y = 5
when {
x > y -> println("x mayor")
x < y -> println("y mayor")
else -> println("iguales")
}
info

Se recomienda usar when sobre múltiples if-else para mejor legibilidad