小编Vin*_*ade的帖子

为什么 Kotlin 在声明为不可为空字符串的属性中接受空值?

我这样声明data class

data class Product(val name: String = "", val price: Float = 0f)
Run Code Online (Sandbox Code Playgroud)

我的代码是:

val json = "{'name': null, 'price': 50.00}"
val gson = GsonBuilder().create()
val p = gson.fromJson(json, Product::class.java)
println("name is ${p.name}")
Run Code Online (Sandbox Code Playgroud)

控制台输出是: name is null

这怎么可能?name 属性不是可为空的字符串。

java android gson kotlin

5
推荐指数
1
解决办法
273
查看次数

标签 统计

android ×1

gson ×1

java ×1

kotlin ×1