java catch之后走return_java , 使用try catch return 还是if return 来退出程序

我从web端传到后台几个参数a,b,c然后需要进行转换。既然是转换,那就有可能出现异常。比如:我需要Integer.parseInt(a);Double.parseDouble(b);c.toString;我想到两种方式来处理异常:...

我从web端传到后台几个参数 a,b,c 然后需要进行转换。既然是转换,那就有可能出现异常。

比如 : 我需要 Integer.parseInt(a); Double.parseDouble(b); c.toString;

我想到两种方式来处理异常:

采用正则先校验一遍,即:

if(!Int正则校验a){提示不能转换Int; return;}

if(!Double正则校验a){提示不能转换成Double; return;}

if(c==null){提示null不能ToString;return}

采用try catch

try {

Integer.parseInt(a); Double.parseDouble(b); c.toString;

}catch(Exception e){

提示输入有误;

return;

}

或者具体点:

try{

Integer.parseInt(a); Double.parseDouble(b); c.toString;

}catch(NumberFormatException){

提示错误;

return;

}catch(NullPointorException){

提示字符串错误;

return;

}

问题:

单个try catch 和单个if比较 肯定if效率高,但是使用if会导致每次必然回去判断一下 综合考虑,当参数数量达到10个20个...的时候,怎么分析效率问题(是根据出错的概率吗)

效率和代码简洁可读,怎么权衡。我可以用最高层的Exception 来进行一次捕获或者写10个if return.

关于效率问题,我觉得 1ms和10ms的差距虽然是10倍,但是从用户使用角度考虑,差距应该是不大的,但我在网上搜了好久,都说使用if 预先判断,到底是基于什么考虑的?

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值