我正在尝试用Java创建HashMap并使用.put()
方法填充它。蚀的反射使我感到困惑。
在一开始,我以以下方式初始化HashMap,但似乎.put()
对于hashMap对象是不可访问的。
public class NewMap {
Map<Integer, String> hashMap = new HashMap<>();
hashMap.put(10, "Amir");
hashMap.put(20, "Bob");
}
然后,我尝试添加一对大括号,并且它起作用了。
public class NewMap {
Map<Integer, String> hashMap = new HashMap<>();
{
hashMap.put(10, "Amir");
hashMap.put(20, "Bob");
}
}
我试图弄清楚背后的机制,但是失败了。所有相关类均已正确导入。有人可以照亮它吗?
答案 0 :(得分:0)
您所做的只是一个方法调用,它只能在一个块内完成。
该类具有状态和行为。行为表示班级可以执行的特定动作或某些活动。由字段维护的状态。该类中块“ {}”的外部区域用于状态声明,块“ {}”用于行为。
例如, 您定义任何函数,并在初始化哈希图的地方调用它。 您将获得以下运行时错误, “无效的方法声明;返回类型为必需的method();”