📅  最后修改于: 2023-12-03 15:32:31.170000             🧑  作者: Mango
在Kotlin中,有时候我们需要确保变量已经被初始化后才能使用,否则就会抛出异常。那么如何检查变量是否已经被初始化?
Kotlin提供了一种叫做延迟初始化的技术,通过它我们可以推迟变量的初始化,直到我们需要使用它的时候再进行初始化。
使用延迟初始化需要以下步骤:
lateinit
关键字进行修饰,如下:lateinit var name: String
if (::name.isInitialized) {
println("name is initialized.")
} else {
println("name is not initialized.")
}
fun main() {
lateinit var name: String
if (::name.isInitialized) {
println("name is initialized.")
} else {
println("name is not initialized.")
}
name = "Kotlin"
if (::name.isInitialized) {
println("name is initialized.")
} else {
println("name is not initialized.")
}
}
这段代码会输出以下结果:
name is not initialized.
name is initialized.
Kotlin提供了延迟初始化技术,通过其我们可以推迟变量的初始化,直到我们需要使用它的时候再进行初始化。使用延迟初始化需要注意变量的类型必须为可空类型。在使用变量之前需要检查变量是否已经被初始化,否则会抛出异常。