java - 如何处理数字格式异常?
问题描述
我的要求是检查输入的 7 整除性,对于各种测试用例,我已经编写了这段代码,但它抛出了 NumberFormat 异常
class Solution{
int isdivisible7(String num){
// code her
long i= Long.parseLong(num);
// to convert string into long
if(i%7==0)
return 1;
else
return 0;
}
}
如何处理异常并返回任何(有效和无效)输入的结果?
解决方案
如果输入num
不是数字,那么它会抛出NumberFormatException
,所以你只需要抓住它。此外,函数名称应为驼峰式。最后,最好让函数返回boolean
而不是int
值 0 和 1。
boolean isDivisibleBy7(String num){
try {
long i = Long.parseLong(num);
return i % 7 == 0;
} catch (NumberFormatException e) {
// print some error message if you want
System.out.println("You haven't passed number");
return false;
}
}
推荐阅读
- python - 如何从具有浮点值的二维 numpy 数组中删除 NaN,结果类型应该是数组?
- java - 有没有办法让B
, A 的子类 , 被转换为 A ? - ubuntu-14.04 - 如何将 ubuntu 服务器 14.04 LTS 升级到 18.04 LTS?
- java - Adobe Experience Manager 的 netdiagnostics Java 代理启动错误
- r - R - dbWriteTable 在列名中使用大写字母
- amazon-web-services - 在 DynamoDb 中,Time To Live 删除是否计入写入容量
- apollo - 将嵌套对象写入本地 Apollo 缓存
- r - 如何以 10 分钟的步骤聚合数据
- http - netcat 在 http get 请求上不断超时
- python - strptime 在 docker 容器中运行时抛出错误