将地图转换为Kotlin中的地图列表

我正试图转换一个传统的地图:

1 -> "YES", 2 -> "NO", 3 -> "YES", ... 

到一个像这样的固定键的地图列表:

 [ <number -> 1, answer -> "YES">, <number -> 2, answer -> "NO">, ... ] 

现在我有一个不好看的解决方案,并没有真正利用Kotlin的功能特性。 我想知道是否有更清晰的解决方案:

 fun toListOfMaps(map: Map<Int, String>): List<Map<String, Any>> { val listOfMaps = emptyList<Map<String, Any>>().toMutableList() for (entry in map) { val mapElement = mapOf( "number" to entry.component1(), "answer" to entry.component2() ) listOfMaps.add(mapElement) } return listOfMaps } 

One Solution collect form web for “将地图转换为Kotlin中的地图列表”

只要使用Map#map就足够了,例如:

 fun toListOfMaps(map: Map<Int, String>): List<Map<String, Any>> { // v--- destructuring `Map.Entry` here return map.map { (number, answer) -> mapOf("number" to number, "answer" to answer) } } 
  • Kotlin错误:无法找到org.jetbrains.kotlin:kotlin-stdlib-jre7:1.0.7
  • 当表达式中删除Kotlin的中断
  • kotlin在课堂授权中调用一个变异函数
  • Android ListView的项目的图像背景颜色不会改变
  • Kotlin静态方法和变量
  • 在Kotlin中渲染json响应
  • 安装kotlin后无法打开Android studio项目
  • 为什么使用内联而不使用lambdas
  • 为“Number Classes”重载+和+ =运算符
  • Kotlin的原始类型属性不允许使用lateinit修饰符
  • 与Eclipse和JRebel的Kotlin
  • Kotlin language will be the best programming language for Android.