私はHashMap<Int, Int>
Kotlin で a を使用していますが、それを使用しないときget
の戻り値の型はInt?
です。
Int?
を に変換するにはどうすればよいInt
ですか?
これまで を使用してみましたが、それは .Int?.toInt()
を返しているようInt?
です。
フィボナッチ関数を書いていますが、コードは次のようになります。
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
}
}