Middle
Kādus standarta deleģentus jūs zināt?
sobes.tech AI
Atbilde no AI
by lazy— tiek izmanto, lai atliktu īpašības kavēto inicializāciju. Vērtība tiek aprēķināta pirmreizējās piekļuves laikā un tiek kešota.val lazyValue: String by lazy { println("initialized") // Tiek izpildīts tikai pirmreizējās piekļuves laikā "Hello" }Delegates.observable— delegāts, kas ļauj veikt darbību katru reizi, mainoties īpašības vērtībai.import kotlin.properties.Delegates var name: String by Delegates.observable("sākotnējā vērtība") { prop, old, new -> println("${prop.name} vērtība mainījās no $old uz $new") }Delegates.vetoable— delegāts, kas ļauj noķert īpašības vērtības izmaiņas un tās anulēt atkarībā no noteikta nosacījuma.import kotlin.properties.Delegates var age: Int by Delegates.vetoable(10) { prop, old, new -> new >= 0 // Tiek atļautas tikai nenegatīvas vērtības }