kotlinlateinit和bylazy的區(qū)別?
你好Kotlin lateinit 和 by lazy 的區(qū)別:1.lazy{} 只能用在val類(lèi)型, lateinit 只能用在var類(lèi)型 如 :val name: String by lazy { "sherlbon" }lateinit var adapter: MyAdapter122.lateinit不能用在可空的屬性上和java的基本類(lèi)型上 如:lateinit var age: Int //會(huì)報(bào)錯(cuò)13.lateinit可以在任何位置初始化并且可以初始化多次。而lazy在第一次被調(diào)用時(shí)就被初始化,想要被改變只能重新定義4.lateinit 有支持(反向)域(Backing Fields)希望對(duì)你有幫助