【问题标题】:Convert ArrayList<SomeClass> to Map in kotlin将 ArrayList<SomeClass> 转换为 Kotlin 中的 Map
【发布时间】:2020-01-16 07:22:36
【问题描述】:

如果文件名是“firstName”,我正在尝试通过它的字段将某个类的 ArrayList 转换为地图 我要转换的对象中的值是 Sam,而不是键是 但是value并不总是String,key的名字和filed同名。

【问题讨论】:

  • 你能给我们看一个例子吗,你的模型类的 JSON 表示是怎样的?转换特定模型类时地图的外观如何?
  • 这可能会有所帮助-stackoverflow.com/a/50354581/97714

标签: android dictionary arraylist kotlin kotlin-android-extensions


【解决方案1】:

应该可以使用associateByTo 来实现。

Given your list:

val fieldMap = mutableMapOf<Any, Any>()

list.asscoiateByTo(fieldMap, { SomeClass::someField.returnType.javaType }, { it.someField })

您还需要 kotlin.reflect.jvm 包

【讨论】:

  • 谢谢,这似乎是我想要的。我以前从未使用过反射,是否建议明智地使用它?
  • 取决于你需要它的范围取决于它的影响。你不应该注意到它。
猜你喜欢
  • 2014-05-20
  • 2020-06-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-13
  • 2021-10-13
  • 1970-01-01
  • 1970-01-01
  • 2022-01-02
相关资源
最近更新 更多