And*_*per 4 android kotlin kotlin-null-safety
刚刚开始使用kotlin进行android开发.我的arraylist被宣布为这样 -
var day1: ArrayList<DietPlanDetailModel>? = null
现在我试图通过它的位置访问一个元素
    val dietPlan= day1[position]
但我在编译时错误 -
在可空的接收器类型的arraylist上只允许安全或非空的assserted调用
为什么我会收到此错误,我该如何解决?
gue*_*ter 16
问题是,你定义了ArrayListas nullable.你有两个选择:
1)不要定义变量nullable(这取决于你的代码):
var day1: ArrayList<DietPlanDetailModel> = ArrayList()
2)使用空检查访问您的数据结构:
val dietPlan= day1?.get(position)
按照定义,day1可以是,null但是您通过执行来调用函数[],这基本上与call相同day1.get(index)。
这会抛出NullpointerExceptionKotlin编译器试图阻止的。因此,仅允许这样的安全调用:day1?.get()。
| 归档时间: | 
 | 
| 查看次数: | 12939 次 | 
| 最近记录: |