Cómo convertir de forma segura List<Any?> a List<Waypoint> en Kotlin? Unchecked Cast
¡Hola a todos! Acabo de empezar a aprender Kotlin y me encontré con un problema de conversión de tipos de listas.
Tengo una función que devuelve `List`. Dentro de esta función sé con certeza que todos los elementos son objetos de mi clase `Waypoint`. Pero cuando intento asignar el resultado a una variable de tipo `List`, el compilador muestra una advertencia: "Unchecked Cast: kotlin.collections.List to kotlin.collections.List".
Aquí hay un ejemplo de código:
```kotlin
data class Waypoint(val latitude: Double, val longitude: Double, val name: String)
fun getData(): List {
// Supongamos que esto viene de una fuente externa (JSON, base de datos)
return listOf(
mapOf("lat" to 55.75, "lon" to 37.62, "name" to "Moscú"),
mapOf("lat" to 59.93, "lon" to 30.31, "name" to "SPb")
).map { Waypoint(it["lat"] as Double, it["lon"] as Double, it["name"] as String) }
}
fun main() {
val data: List = getData()
// Aquí surge el problema: