NumberFormatException通常是由于字符串无法转换为数字而引起的异常。为了正确处理NumberFormatException,可以考虑以下几个方法:
try {
int num = Integer.parseInt(str);
} catch (NumberFormatException e) {
System.out.println("输入的字符串无法转换为数字");
}
if (str.matches("\\d+")) {
int num = Integer.parseInt(str);
} else {
System.out.println("输入的字符串不是数字");
}
public static Integer tryParse(String str) {
try {
return Integer.parseInt(str);
} catch (NumberFormatException e) {
return null;
}
}
Integer num = tryParse(str);
if (num != null) {
System.out.println("转换成功:" + num);
} else {
System.out.println("输入的字符串无法转换为数字");
}
通过以上方法,可以正确处理NumberFormatException异常,避免程序因为无法转换字符串为数字而出现异常情况。