2010-12-22 77 views
0

家伙嗨,如果我尝试指定字符串字符串数组我得到空指针异常.. 请给我一个解决方案..的Android阵列字符串

这里是我的代码,我在这家空指针线条大拇指[j] =标题; 的代码如下...

for (int i = 0; i < items.getLength(); i++) { 
     Node item = items.item(i); 
     NodeList properties = item.getChildNodes(); 
     for (int j = 0; j < properties.getLength(); j++) { 
      Node property = properties.item(j); 
      String name = property.getNodeName(); 
      if (name.equalsIgnoreCase("title")) { 
       try{ 
        property.normalize(); 
        Spanned title2 = Html.fromHtml(property.getFirstChild().getNodeValue().replaceAll("\\<.*?>", "")); 
        title = title2.toString(); 
       }catch(Exception e){ 
        Log.v("Exception",""+e); 
       } 
       thumbs[j]=title; 
      } 
     } 
    } 
+2

你在哪里初始化`thumbs`?你能告诉我们吗? – Cristian 2010-12-22 17:03:10

回答

0

唯一的可能性是拇指为空。如果你不初始化它,它不是编译错误。不要依赖IDE来告诉你初始化的东西是否通过检查代码来证明自己,或者在每次使用之前打印大拇指的值。

如果j> thumbs.length-1,该行唯一的其他异常可能性是ArrayIndexOutOfBoundsException。但是,这不是NPE。如果标题为空,那很好,而不是一个例外。

1

我的猜测是,拇指[]尚未初始化做这样的事情:

的String [] =大拇指新的String [properties.getLength()];

虽然很难说 - 你的代码不显示你对这个数组的声明。

+0

不,不,我没有检查它..如果我没有初始化意味着它会显示在ECLIPSE – Venky 2010-12-22 17:10:27