我有一个简单的Hashmap public HashMap<String,String> StoreDet;。现在,每当我尝试将某些值设为:

String val = (eElement.getElementsByTagName("name").item(0)
        .getTextContent()
        + "^"
        + eElement.getElementsByTagName("state").item(0)
                .getTextContent() + "^" + eElement
        .getElementsByTagName("city").item(0).getTextContent());
val = val.trim().toString();
System.out.println(val);

String key = eElement.getAttribute("id").trim().toString();
System.out.println(key);
//System.out.println(eElement.getAttribute("id")+" "+ (eElement.getElementsByTagName("name").item(0).getTextContent()+"^"+eElement.getElementsByTagName("state").item(0).getTextContent()+"^"+eElement.getElementsByTagName("city").item(0).getTextContent()));
//(eElement.getElementsByTagName("name").item(0).getTextContent()+"^"+eElement.getElementsByTagName("state").item(0).getTextContent()+"^"+eElement.getElementsByTagName("city").item(0).getTextContent())

StoreDet.put(key, val); // I get an NPE at this line


我在指定的行得到了NPE。 SOP的键和值均显示正确的值,但仍在发生异常。任何帮助,将不胜感激,谢谢。

最佳答案

如果要在那一行得到它,StoreDet必须为null。您是否曾经通过new创建它?

10-07 13:10