为了账号安全,请及时绑定邮箱和手机立即绑定

if(childNodes.item(k).getNodeType() == Node.ELEMENT_NODE) 报出空指针异常??真么回事??

求大神解释??http://img1.sycdn.imooc.com//54f1c5c100015fac10840399.jpg

正在回答

3 回答

Node.ELEMENT_NODE这个东西用补全的方式去输入

0 回复 有任何疑惑可以回复我~

 Java 空指针异常就是对象没有进行实例化便进行了使用。实例化的意义,就是将对象实例的地址赋值给对象符号。比如:

String a = new String();

在堆中将String的实例构造后,将地址赋值给a , String a = “123”;即将常量池中的“123”这个对象实例的地址赋值给a。

 引发空指针异常,往往是在获取对象实例地址的时候,由于获取的对象实例并不存在,因此返回的地址为null,而又没进行判断,直接使用了该对象实例(地址)引发的比例如:

    String userName = request.getParameter("username");
    If (userName.equals("root"))
    {....}

如果request中并不存在“username”字段,则自然getParameter返回的是null。而调用userName(为null)的equals会抛出异常。

  小技巧:如果要把某个方法的返回值与常量做比较,把常量放在前面,可以避免调用null对象的equals方法。例如上述改成:

 "root".equals(userName);


1 回复 有任何疑惑可以回复我~
#1

yangxin 提问者

谢谢,对于空指针异常的问题,我找到了,就是在循环的时候 K 的范围多出来了一个=号导致对应的节点没有值,最终出现的空指针异常,不过还是十分感谢你。
2015-03-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

if(childNodes.item(k).getNodeType() == Node.ELEMENT_NODE) 报出空指针异常??真么回事??

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信