.add MutableList方法<e>抛出kotlin.KotlinNullPointerException

时间:2017-10-15 18:31:59

标签: kotlin nullable

请记住,我正在加强功能编程嘿嘿。

我已经定义了一个像这样的Mutable列表:

 var list: MutableList<E>? = null

所以,当我尝试使用list!!.add(E())时,会抛出一个

  

kotlin.KotlinNullPointerException。

我理解这是因为我在定义它时为此列表指定了null,但是没有找到正确的解决方案来考虑函数式编程方面如何解决这个问题。 你可以建议我一些代码或概念来实现这种情况。

2 个答案:

答案 0 :(得分:1)

在调用任何方法之前,需要使用MutableList实例初始化变量。

list = mutableListOf<E>() // creates an empty mutable list
list!!.add(E())

如果在声明中初始化变量,则甚至不需要将其声明为可空和var。

val list = mutableListOf<E>()
...
list.add(E())

答案 1 :(得分:0)

这是正确的声明列表。

private var mList = mutableListOf<String>()//You can change the String class to your data model

您可以添加如下值:

mList.add(String)//you can assign your data model class