Ich möchte eine Funktion schreiben, die jedes Element in einem zurückgibt List
, das nicht das erste oder das letzte Element ist (ein Durchkontaktpunkt). Die Funktion erhält eine generische List<*>
Eingabe. Ein Ergebnis sollte nur zurückgegeben werden, wenn die Elemente der Liste vom Typ sind Waypoint
:
fun getViaPoints(list: List<*>): List<Waypoint>? {
list.forEach { if(it !is Waypoint ) return null }
val waypointList = list as? List<Waypoint> ?: return null
return waypointList.filter{ waypointList.indexOf(it) != 0 && waypointList.indexOf(it) != waypointList.lastIndex}
}
Wenn das Gießen List<*>
auf List<Waypoint>
, erhalte ich die Warnung:
Deaktivierte Besetzung: kotlin.collections.List to kotlin.colletions.List
Ich kann keinen Weg finden, es anders umzusetzen. Was ist der richtige Weg, um diese Funktion ohne diese Warnung zu implementieren?