在 kotlin 中获取空指针异常



a = 2.3 和 b = 1.9 的总和,结果应为 4。

所以我尝试通过转换为 Int 来四舍五入数字,但我得到空指针异常。

fun main() {
val a = readLine()!!.trim().toFloat()
val b = readLine()!!.trim().toFloat()
val result = addNumbers(a,b)
}
fun addNumbers(a:Float, b:Float):Int{ //I should not change this function
return a.toInt()+b.toInt()
}

您可能在没有标准输入的上下文中运行(例如 https://play.kotlinlang.org/,仅举个例子(,因为那是readLine()返回null的时候:

如果将输入流重定向到文件并且已到达文件末尾,则返回行 read或 null。

请提供readLine((函数。 您可以通过添加 !!到呼叫。更好的是

fun main() {
val a = readLine()?.trim().toFloat()?: 0
val b = readLine()?.trim().toFloat()?: 0
val result = addNumbers(a,b)
}
fun addNumbers(a:Float, b:Float):Int{ //I should not change this function
return a?.toInt()?:0+b?.toInt()?:0
}

在那里,当 readLine 为空时,你会得到一个 0 要添加

最新更新