黑马程序员技术交流社区

标题: 求助 张老师留下的题 [打印本页]

作者: 唐林渊    时间: 2012-3-24 23:30
标题: 求助 张老师留下的题
、下面的代码有什么不妥之处?
请详细用语言描述
  谢谢

        1. if(username.equals(“zxx”){}
       
        2.        int  x = 1;
                        return x==1?true:false;
作者: 杨朝辉    时间: 2012-3-24 23:33
1、如果username为空的话,if(username.equals("zxx")){}会报出空指针异常。改为:
if("zxx".equals(username)){}比较妥当。
2、return x==1就可以了。
作者: 唐林渊    时间: 2012-3-24 23:51
杨朝辉 发表于 2012-3-24 23:33
1、如果username为空的话,if(username.equals("zxx")){}会报出空指针异常。改为:
if("zxx".equals(userna ...

            谢谢
作者: 岳民喜    时间: 2012-3-24 23:52
本帖最后由 岳民喜 于 2012-3-25 15:58 编辑

1,主要就是当主函数在给name传值的时候如果传的是name=null,那就会导致虚拟机出现空指针异常,因为
空指针是不能调用equals的, if(name!=null && name.equals("zxx"))也可以,前面是false的话后面不会再执行了。
2,没必要用三元运算符,直接return(x==1)就可以看到结果
作者: 梁锡伟    时间: 2012-3-24 23:54
个人不喜欢用"zxx".equals(username),特别是username==null的时候,你很可能还不知道。还不如直接让他报空指针异常,调试的时候一目了然。不过在学xml sax解析的时候必须用2楼说的那种。楼主到时候就懂了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2