java - 捕获异常后继续(Android/Java)

标签 java android exception

我想将输入字符串转换为长字符串:

String inputStr = inputText.getText().toString();
Long inputNumber = Long.valueOf(inputStr);
// do something with inputNumber

但是,如果用户输入包含字母的字符串,则 valueOf() 会抛出一些异常,导致程序崩溃。

另一方面,如果我围绕 valueOf() 构建一个 try-catch block ,则会收到“无法解析符号 inputNumber”错误。如果我在 block 之外声明 Long inputnumber,我会收到“此变量可能未初始化”错误。

我只想在 textView 中输出错误的 inputStr 错误消息,然后照常继续程序。如何做到这一点?

最佳答案

在 try/catch 之外声明并初始化 inputNumber:

Long inputNumber = null;
try {
    inputNumber = Long.valueOf(inputStr);
}
catch (NumberFormatException e) {
    // handle exception
}

关于java - 捕获异常后继续(Android/Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31877362/

相关文章:

java jpanel 与 repaint() 或 : Is a Listener addable to swing's repaint? 同步

android - 取消 Google Play 游戏登录后 Facebook 登录崩溃(反之亦然)

Java 运行时错误 - java.lang.NoClassDefFoundError 名称错误

c# - 如何在不退出循环的情况下处理异常?

java - 如何使用 DB 为方法创建 jUnit 测试用例

java - 使用静态列表保留Java中的所有线程

android - 检查所有 Activity 的互联网并在网络断开时显示消息

android - facebook 帐户工具包 - 返回错误 "We' 抱歉,出了点问题。”在 android 中

c# - 是什么阻止我的事件处理程序方法完成?

java - 如何根据接口(interface)实现创建新对象