Junior — Middle
Dans quel contexte l'appel de la fonction lazy() est-il effectué ?
sobes.tech IA
Réponse de l'IA
La fonction lazy() en Android (souvent dans le contexte de Kotlin) est utilisée pour l'initialisation paresseuse des variables. L'appel à la fonction lazy() se produit au moment de la définition de la propriété, mais la lambda passée à lazy n'est exécutée que lors de la première utilisation de cette propriété. Ainsi, le code à l'intérieur de lazy s'exécute lors du premier accès à la valeur, et non lors de la création de l'objet ou de la classe.
Exemple:
val myValue: String by lazy {
println("Calcul de la valeur")
"Bonjour, le Monde!"
}
fun main() {
println("Avant le premier accès")
println(myValue) // La lambda dans lazy est appelée ici
println(myValue) // La valeur est déjà calculée, la lambda n'est pas appelée
}
Dans cet exemple, la lambda à l'intérieur de lazy ne s'exécutera qu'une seule fois lors du premier accès à myValue.