In Kotlin, Wie konvertiere ich ein Int? ein Int

Ich bin mit einem HashMap<Int, Int> in Kotlin und wenn ich get der Rückgabetyp ist Int?.

Wie kann ich umwandeln der Int? zu einem Int?

Bisher habe ich versucht, mit Int?.toInt(), aber das scheint wieder ein Int?.

Schreibe ich eine Fibonacci-Funktion, und mein code sieht wie folgt aus:

val fibMemo : Map<Int, Int> = HashMap<Int,Int>()
fun fibN(n:Int) : Int {
    if (n == 0 || n == 1) return 1
    if (fibMemo.containsKey(n))
        //Error here: Type mismatch: inferred type is Int? but Int was expected
        return fibMemo.get(n)?.toInt()
    else {
        val newNum : Int = fibN(n-1) + fibN(n-2)
        fibMemo.put(n, newNum)
        return newNum
    }
}
  • Gibt es neuere Antworten, die den Strom für Kotlin.
  • Diese Frage wird nun beantwortet durch das immer aktuelle und vollständige: stackoverflow.com/questions/34498562 Nach dieser Frage angenommen hat, Antworten und Stimmen, diese sollten geschlossen werden, als doppelte, die. In meta.stackexchange.com eine empfohlene Weg, um zu modernisieren, Fragen und Antworten ist eine neue zu erstellen, und schließen Sie dann das alte, während das hinzufügen einer Referenz auf die neue.
InformationsquelleAutor jjnguy | 2012-03-05
Schreibe einen Kommentar