Avatar ·

Comment vérifier si une variable lateinit est initialisée en Kotlin ?

Bonjour à tous ! J'ai récemment commencé à apprendre Kotlin et j'ai rencontré un problème avec l'utilisation des variables lateinit. J'ai une classe dans laquelle je déclare une propriété avec le modificateur lateinit, car je ne peux pas l'initialiser dans le constructeur — la valeur provient d'une source externe (par exemple, après le chargement de données ou l'injection de dépendances via DI). Voici un exemple simplifié : ```kotlin class UserManager { lateinit var userName: String fun loadUser() { // Simulation de chargement de données userName = "Alice" } fun greetUser() { // Ici, une erreur peut se produire si loadUser() n'a pas encore été appelé println("Hello, $userName") } } ``` Le problème est que si j'appelle `greetUser()` avant que `loadUser()` n'ait assigné une valeur, j'obtiens une `UninitializedPropertyAccessException`. Je souhaite vérifier si la variable est initialisée pour éviter cette erreur et éventuellement exécuter une action par défaut. Dites-moi, y a-t-il un moyen en Kotl