我正在做一个学校作业,我应该制作一个像这样的哈希图数组:

HashMap<String, Person>[] mood = (HashMap<String, Person>[])  new HashMap<?, ?>[6];


即时通讯从文件中读取,它是这样的。问题是它给了NullPointerException,让我尝试将心情变成心情[0]!无法在我的书中找到有关hashmap-array的工作方式的任何信息.. :(对所有帮助(:

Person p = new Person();
p.name = word[1];
p.age = word[2];
p.mood = word[3];

people.put(p.name, p);

 if (p.mood.equals("HAPPY")) {
 mood[0].put(p.mood, p); //NullPointerException
 }

最佳答案

基本上,您确实初始化了一个情绪数组,但是它是用null初始化的。因此,在可以对mood [0](或任何其他索引)调用任何方法之前,需要在mood [0]内放置一个非空对象。

09-08 11:52