今天面试遇到一问题说,平常我们都用public void A(String name){
if(name.equals(""){...} ..... }
如果是("").equals(name)会怎么样
我感觉没什么区别啊,请各位不吝赐教
收起
当前问题酬金
¥ 0 (可追加 ¥500)
支付方式
扫码支付
支付金额 15 元
提供问题酬金的用户不参与问题酬金结算和分配
支付即为同意 《付费问题酬金结算规则》
[quote]如果是("").equals(name)会怎么样
我感觉没什么区别啊,请各位不吝赐教[/quote] 还是有区别的,name作为参数,可以为null 如果这时调用name.equals(""),则会抛NullPointerException 反过来,("").equals(name)则永远不会抛exception.
这种写法,一方面,可以避免异常处理(异常处理是比较费CPU的),同时又减少了代码量。
报告相同问题?