地図データクラスに変換します

Smnime:

私は、任意のデータクラスにマップを変換できるようにするKotlinで簡単な方法はありますか?

私が変換しようとしている地図は、データクラスの必要なフィールドのすべてのキーを持っています。

私の周り狩りましたが、非常に一般的な方法でこれを行うことについて話すように見える何かを見つけることができませんでした。

私は私が使用できることを知っているObjectMapperが、それは、余分なライブラリを必要とします。ただKotlinで提供されています何かを探しています。

killjoy:

理由だけではなく、マップのデリゲートを使用していませんか?

class MyData(val map: Map<String, String>) {
    val foo by map
    val bar by map
}

それとも、コンパニオンオブジェクトを使用して、それをラップし、使用してそれを呼び出すことができます MyData.from(mymap)

data class MyData(val foo: String, val bar: String) {
    companion object {
        fun from(map: Map<String, String>) = object : {
            val foo by map
            val bar by map

            val data = MyData(foo, bar)
        }.data
    }

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=223204&siteId=1
おすすめ