Avatar ·

如何在 Kotlin 中安全地将 List<Any?> 转换为 List<Waypoint>?Unchecked Cast

大家好!我刚开始学习 Kotlin,遇到了列表类型转换的问题。 我有一个函数返回 `List`。在这个函数内部,我确切知道所有元素都是我的类 `Waypoint` 的对象。但是当我尝试将结果赋值给类型为 `List` 的变量时,编译器会发出警告:"Unchecked Cast: kotlin.collections.List to kotlin.collections.List"。 以下是示例代码: ```kotlin data class Waypoint(val latitude: Double, val longitude: Double, val name: String) fun getData(): List { // 假设这来自外部源(JSON、数据库) return listOf( mapOf("lat" to 55.75, "lon" to 37.62, "name" to "莫斯科"), mapOf("lat" to 59.93, "lon" to 30.31, "name" to "圣彼得堡") ).map { Waypoint(it["lat"] as Double, it["lon"] as Double, it["name"] as String) } } fun main() { val data: List = getData() // 这里出现了问题: