【发布时间】:2022-01-06 22:56:51
【问题描述】:
我有一张地图,其值是不同对象类型(LocalDate、LocalTime、Float、List(Float))的数组列表。
我想将地图值转换为我创建的自定义数据类。
我已经尝试解构映射值组件,但是我收到错误“解构 Map.Entry
我将如何在下面执行此转换?
块引用
val localDate1 = LocalDate.now()
val localTime1 = LocalTime.now()
val float1 = 1f
val floatList1 = listOf<Float>(1f, 2f, 3f)
val localDate2 = LocalDate.now()
val localTime2 = LocalTime.now()
val float2 = 2f
val floatList2 = listOf<Float>(4f, 5f, 6f)
val myMap = HashMap<String, Any>()
myMap["keyOne"] = arrayListOf<Any>(localDate1, localTime1, float1, floatList1)
myMap["keyTwo"] = arrayListOf<Any>(localDate2, localTime2, float2, floatList2)
val newMap = myMap.mapValues { (date, time, float, floatList) -> /*Here i am getting destructuring error*/
CustomObject(
date,
time,
float,
floatList
)
}
块引用
data class CustomObject (
val date: LocalDate,
val time: LocalTime,
val float: Float,
val floatList: List<Float>
)
【问题讨论】:
标签: kotlin collections