添加到字符串数组时为空指针

时间:2012-05-26 14:03:27

标签: java jsoup

此代码有效。它打印出列表中的值

ArrayList<String> menuItemsUrl=null;

for (int i = 0; i < modules.size(); i++) {
                String tmp = modules.get(i).attr("href");
                Log.d("", tmp);

            }

但是这个生成一个空指针。为什么呢?

for (int i = 0; i < modules.size(); i++) {
                String tmp = modules.get(i).attr("href");
                menuItemsUrl.add(tmp);

            }

2 个答案:

答案 0 :(得分:3)

在您的代码中,您尚未初始化menuItemsUrl,因此NPE。

您已在此处ArrayList<String> menuItemsUrl=null;声明了自己的列表,当您尝试访问menuItemsUrl.add(tmp);时,menuItemsUrl并未引用任何指向null的内容,这意味着NPE,摆脱NPE,在使用之前将其初始化。

menuItemsUrl = new ArrayList<String>();

答案 1 :(得分:0)

零点异常发生在“modules.size()”。模块是空引用。 尝试实例化模块参考。