Junior — Middle
lazy() funksiyasının çağırılması hansı kontekstdə həyata keçirilir?
sobes.tech Süni İntellekt
AI-dan cavab
Android-də (əksər hallarda Kotlin kontekstində) lazy() funksiyası dəyişənlərin tənbəl (lazy) başlanması üçün istifadə olunur. lazy() funksiyasının çağırışı, xüsusiyyətin təyin olunduğu zaman baş verir, lakin lazy-yə verilmiş lambda yalnız ilk dəfə bu xüsusiyyətə müraciət edildikdə icra olunur. Beləliklə, lazy daxilindəki kod, dəyərə ilk giriş zamanı icra olunur və obyekt və ya sinif yaradılarkən deyil.
Nümunə:
val myValue: String by lazy {
println("Dəyər hesablanır")
"Salam, Dünya!"
}
fun main() {
println("İlk girişdən əvvəl")
println(myValue) // Burada lazy daxilindəki lambda çağırılır
println(myValue) // Dəyər artıq hesablanıb, lambda yenidən çağırılmır
}
Bu nümunədə, lazy daxilindəki lambda yalnız bir dəfə, ilk girişdə icra olunacaq.