Avatar ·

Uso de Boolean? en una expresión condicional if en Kotlin

¡Hola a todos! Acabo de empezar a aprender Kotlin después de Java y me encontré con un problema que no puedo entender. Tengo una variable nullable `isActive: Boolean?` que puede ser `true`, `false` o `null`. Quiero verificarla en una condición `if`: ```kotlin var isActive: Boolean? = null if (isActive) { println("Activo") } else { println("Inactivo") } ``` Pero el compilador da un error: "Type mismatch: inferred type is Boolean? but Boolean was expected". Entiendo que `Boolean?` es un tipo nullable, mientras que `if` espera un `Boolean` normal. Pero, ¿cómo manejar correctamente esta situación? Necesito que cuando sea `null`, el programa también haga algo (por ejemplo, considere que es "inactivo"). Indíquenme cómo se hace esto en Kotlin. Intenté usar `if (isActive == true)`, pero parece un parche. ¿Hay una forma más idiomática? ¡Gracias de antemano por la ayuda! <<>>

Problema: por qué no se puede usar Boolean? en if

En Kotlin, el tipo Boolean?