¿Cómo verificar si una variable «lateinit» se ha inicializado o no en Kotlin?

En Kotlin, la palabra clave lateinit se usa para aquellas variables que se inicializan después de la declaración o podemos decir que la variable que se inicializa tarde se llama variable lateinit. La palabra clave lateinit se usa cuando estamos seguros de que la variable se inicializará antes de usarla. Si no inicializamos una variable lateinit antes de usarla, da un error de «la propiedad lateinit no se ha inicializado». Puede comprobar si la variable lateinit se ha inicializado o no antes de usarla con la ayuda del método isInitialized() . Este método devolverá verdadero si la propiedad lateinit se ha inicializado; de lo contrario, devolverá falso .

Puedes hacer esto fácilmente:

::nombreDeVariable.esInicializado

o:

this::variableName.isInitialized

Pero si estás dentro de un oyente o de una clase interna, haz esto:

this@OuterClassName::variableName.isInitialized

Por ejemplo:

Kotlin

class Tutorial {
  
    lateinit var tutorialName : String
  
    fun initializeName(){
        println(this::tutorialName.isInitialized)
          
        // initializing name
        tutorialName = "GFG Android Course" 
        println(this::tutorialName.isInitialized)
    }
}
  
fun main() {
    Tutorial().initializeName();
}

Producción:

falso

verdadero

Publicación traducida automáticamente

Artículo escrito por introidx y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *