我想在类中创建一个Hashmap。例如,我有一个Java类,看起来像这样:
public class test{
public static class testClass{
HashMap<String, Integer> data;
testClass left;
testClass right;
testClass(){
left = null;
right = null;
data.put("", -1); // Exception here
}
}
public static void main(String []args){
testClass database = new testClass(); //Throws an exception here also
}
}
正如您从上面的代码中看到的那样,在我尝试创建类并尝试初始化hashmap时会抛出异常。但是,从我看到的所有示例中,我注意到您需要使用new
关键字为HashMap创建内存。结果,我想知道,这可能吗?如果是这样,有没有办法解决这些异常?如果有人能帮助我,这将是伟大的。谢谢!
答案 0 :(得分:1)
您忘记初始化HashMap
:
HashMap<String, Integer> data = new HashMap<String, Integer>();
除此之外,你的代码很乱并且有很多问题:
如果您想了解如何改进所有这些内容,请阅读Java tutorial。
答案 1 :(得分:1)
您尚未创建HashMap
的实例,您刚刚声明了HashMap
的变量类型,您需要初始化HashMap
才能使用它,例如
HashMap<String, Integer> data = new HashMap<String, Integer>();
您可以在同一行中声明并初始化HashMap
,或者如果您有构造函数,则可以在构造函数中初始化它。
更正错误类的版本。
public class test{
public static class testClass{
HashMap<String, Integer> data;
testClass left;
testClass right;
testClass(){
left = null;
right = null;
data = new HasMap<String, Integer>();
data.put("", -1);
}
}
public static void main(String []args){
testClass database = new testClass();
}
}