[英]Convert object of Class into Map
我有一個班級,充滿了 String 之類的
data class TestClass (
var par1: String?,
var par2: String?,
var par3: String?
)
我想將其轉換為 Map,其中 Key 和 Value 是 String。 在 Kotlin 中執行此操作的最佳方法是什么?
您可以使用 Kotlin 反射來實現它,將kotlin-reflect
庫添加到應用程序類路徑並使用如下代碼:
fun TestClass.asMap() = this::class.declaredMemberProperties
.map {
it as KProperty1<TestClass, Any?>
it.name to it.get(this).toString()
}.toMap()
我們將declaredMemberProperties
元素從星形投影轉換為Any?
反而。 由於 JVM 類型擦除,大小寫未選中,但它仍然是必需的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.