首页 > 解决方案 > 将字符串解析为 Int Kotlin

问题描述

如何将字符串解析为Int

从edittext中获取值

我的代码:

var data = input.text.toString().trim().toInt()
    for (a in 0..data){
    }

但我有错误

NumberFormatException:对于输入字符串“”

标签: androidstringkotlinnumberformatexception

解决方案


正如Andreas在评论中提到的, input.text.toString().trim() 的值是“”。这表明错误在您的代码中的其他位置。但是,如果您希望能够在不引发异常的情况下处理这些错误,则可以使用 toIntOrNull() 并执行以下操作:

var data = input.text.toString().trim().toIntOrNull() ?: 0
for (a in 0..data){
    //...
}

这将确保在字符串无效的情况下数据等于 0。

我不确定为什么你得到的错误是说“”,因为 trim() 应该把它变成“”。您确定逐字发布错误消息吗?


推荐阅读