Search code examples
androidkotlinkotlin-null-safety

Only safe or non null assserted calls are allowed on a nullable receiver type of arraylist


Just started using kotlin for android development.My arraylist is declared like this-

var day1: ArrayList<DietPlanDetailModel>? = null

Now I am trying to access an element by its position

    val dietPlan= day1[position]

but i am getting below compile time error-

Only safe or non null assserted calls are allowed on a nullable receiver type of arraylist

Why am i getting this error and how can i resolve it?


Solution

  • The problem is, that you defined the ArrayList as nullable. You have two options here:

    1. don't define the variable nullable (this depends on your code):
    var day1: ArrayList<DietPlanDetailModel> = ArrayList()
    
    1. access your data-structure with a null check:
    val dietPlan= day1?.get(position)