Kotlin + Gson-如何在数据类为null时获取emptyList

时间:2018-10-02 16:13:24

标签: kotlin gson

可以说我具有以下数据类:

data class MyDataClass(SerializedName("myList") val myList: List<String>)

我尝试解析此JSON:

{ "myList": null } or {} 

我想获取一个emptyList,但我得到一个空myList。有人知道如何在不对包含列表的每种类型进行registerTypeAdapter的情况下进行序列化吗?

如果我将emptyList()设置为构造函数的默认值。第二个JSON如我所愿。

1 个答案:

答案 0 :(得分:0)

将您的@SerializedName("myList") val myList: List<String>切换为:

@SerializedName("myList") val myList: List<String>?只是为了远离null

现在,Kotlin具有默认参数。但我不知道它是否适合您的情况:

data class MyDataClass(@SerializedName("myList") val myList: List<String> = emptyList())