0

在我在启动时运行的主类中,它尝试将一些数据放入 HashMap。但是它说HashMap为null,并且它不能添加数据。

public class COD extends JavaPlugin{

    public void loadConfig(){
        Settings.gunradius.put("Famas", getConfig().getInt("guns.Famas"));
    }
}

public class Settings {
    static HashMap<String, Integer> gunradius;
}

它不会将数据放入 HashMap 中。我怀疑这与静态方法有关,但我真的不知道。

4

2 回答 2

3

改变

 static HashMap<String, Integer> gunradius;

 static HashMap<String, Integer> gunradius= new HashMap<String, Integer();

否则您gunradius将指向null.

对引用的任何操作都会null导致NullPointerException.

于 2012-11-02T17:41:56.670 回答
3

您需要HashMap在使用它之前进行初始化。内化到对象的默认值是null

static final Map<String, Integer> gunradius = new HashMap<String, Integer>();
于 2012-11-02T17:42:13.243 回答