【发布时间】:2019-10-31 04:20:51
【问题描述】:
参考:https://bytes.babbel.com/en/articles/2018-05-25-kotlin-gson-nullability.html
本文讨论了 GSON 与 Kotlin 的缺点之一。如果我们有这样的数据类并尝试破坏它:
data class User(
val email: String,
val firstName: String)
fun main(args: Array<String>) {
val json = """{
"email": null
}"""
val gson = Gson()
println(gson.fromJson(json, User::class.java).email)
}
一旦我们解析它并使用email 字段,我们就会返回一个NullPointerException。这是 GSON 的预期行为。
是否有一个库可以给我一个像IllegalStateException 这样的错误并验证哪个字段应该可以为空?或者,有没有办法解决 Moshi 或 GSON 或任何其他 JSON 库,以便我可以得到这样的错误?
【问题讨论】:
-
data class User( @SerializedName("email") val email: String, @SerializedName("firstName") val firstName: String)
标签: android json kotlin deserialization