我有一个像这样的 Kotlin 数据类:
data class User(
var id: Int,
var name: String? = null,
var email: String? = null,
var age: Int? = null,
var latitude: Float? = null,
var longitude: Float? = null
)
然后我创建它的实例
var user = User(1)
然后我试试这个:
val field = "name"
var prop = User::class.memberProperties.find {it -> it.name == field}!!
prop.get(user)
它可以工作,但是如果我尝试像这样设置值:
prop.setter.call(user, "Alex")
我收到一个错误:
未解决的参考:setter
它既不是这样工作的:
prop.set(user, "Alex")
(这是基于此处提供的解决方案,但它不适用于我:解决方案)