This question already has answers here:
Why doesn't Kotlin allow to use lateinit with primitive types?
(3 个回答)
1年前关闭。
我希望稍后初始化私有(private)一个 var id,所以我使用代码
但是我收到错误“lateinit”修饰符不允许用于原始类型的属性,为什么?我该如何解决?谢谢!
代码 A
(3 个回答)
1年前关闭。
我希望稍后初始化私有(private)一个 var id,所以我使用代码
private lateinit var id:Int
但是我收到错误“lateinit”修饰符不允许用于原始类型的属性,为什么?我该如何解决?谢谢!
代码 A
class UIAddEditBackup: AppCompatActivity() {
private lateinit var mContext: Context //OK
private var isAdd: Boolean=false //OK
private lateinit var id:Int // I get the error
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.layout_add_edit_backup)
id=5
}
}
最佳答案
对于原始类型,您可以删除 lateinit
修饰符并用零初始化(或 bool 值为 false)
关于android - 为什么我不能在 Kotlin 中为 int var 设置 lateinit?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49594089/
10-10 14:25