JAVA構造MAP並初始化MAP
阿新 • • 發佈:2017-12-25
popu 初始化 table 擁有 內存泄露 dem () private clip
第一種方法:static塊初始化
[java] view plain copy
- public class Demo{
- private static final Map<String, String> myMap;
- static
- {
- myMap = new HashMap<String, String>();
- myMap.put("a", "b");
- myMap.put("c", "d");
- }
- }
第二種方法:雙括號初始化 (匿名內部類)
[java] view plain copy
- HashMap<String, String > h = new HashMap<String, String>(){{
- put("a","b");
- }};
慎用, 非靜態內部類/ 匿名內部類包含了外圍實例的引用, 如果擁有比外部類更長的生命周期,有內存泄露隱患
第三種方法:Guava
[java] view plain copy
- Map<String, Integer> left = ImmutableMap.of("a", 1, "b", 2, "c", 3);
- //或者
- Map<String, String> test = ImmutableMap.<String, String>builder()
- .put("k1", "v1")
- .put("k2", "v2")
- ...
- .build();
JAVA構造MAP並初始化MAP