Middle
რომელი სტანდარტული დელეგატები იცით?
sobes.tech AI
პასუხი AI-სგან
by lazy— հատկության ուշացման սկզբնականացման համար օգտագործվում է: Արժեքը հաշվարկվում է առաջին դիմումի ժամանակ և պահվում է կեշումում:val lazyValue: String by lazy { println("initialized") // Միայն առաջին դիմումի ժամանակ կիրականացվի "Hello" }Delegates.observable— դելեգատ, որը թույլ է տալիս կատարել գործողություն յուրաքանչյուր հատկության արժեքի փոփոխության ժամանակ:import kotlin.properties.Delegates var name: String by Delegates.observable("սկզբնական արժեք") { prop, old, new -> println("${prop.name} արժեքը փոխվեց $old-ից $new-ին") }Delegates.vetoable— դելեգատ, որը թույլ է տալիս խոչընդոտել հատկության արժեքի փոփոխությունը և չեղարկել այն որոշ պայմանների հիման վրա:import kotlin.properties.Delegates var age: Int by Delegates.vetoable(10) { prop, old, new -> new >= 0 // Միայն բացասական արժեքները թույլատրվում են }