开发手册 欢迎您!
软件开发者资料库

Java中 static final修饰HashMap静态成员变量初始化方法

本文主要介绍Java中,用final和static修饰HashMap的静态成员变量初始化的方法。

初始化时必须手动添加所有元素

1、 可以使用静态代码块初始化

public class Demo
{
private static final Map myMap;
static
{
myMap = new HashMap();
myMap.put("a", "b");
myMap.put("c", "d");
}
}

2、 使用函数方法初始化

public class Demo
{
private static final Map myMap = createMap();
private static Map createMap()
{
Map myMap = new HashMap();
myMap.put("a", "b");
myMap.put("c", "d");
return myMap;
}
}

3、 Java 9中HashMap的初始化方法

public class Demo {
private static final Map test = Map.of("a", "b", "c", "d");
private static final Map test2 = Map.ofEntries(
entry("a", "b"),
entry("c", "d")
);
}

test和test2的初始化是相同的,只是表达方式不一样。Map.of方法在Map中定义了最多十个元素,而该Map.ofEntries方法没有这样的限制。