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
}