JAVA構造MAP並初始化MAP

第一種方法:static塊初始化

 

[java]  view plain  copy
 
  1. public class Demo{  
  2.     private static final Map<String, String> myMap;  
  3.     static  
  4.     {  
  5.         myMap = new HashMap<String, String>();  
  6.         myMap.put("a", "b");  
  7.         myMap.put("c", "d");  
  8.     }  
  9. }  

 

第二種方法:雙括號初始化 (匿名內部類)

 

[java]  view plain  copy
 
  1. HashMap<String, String > h = new HashMap<String, String>(){{  
  2.       put("a","b");      
  3. }};  


 

 
慎用, 非靜態內部類/ 匿名內部類包含了外圍實例的引用, 若是擁有比外部類更長的生命週期,有內存泄露隱患

第三種方法:Guava

 

[java]  view plain  copy
 
  1. Map<String, Integer> left = ImmutableMap.of("a", 1, "b", 2, "c", 3);  
  2. //或者  
  3. Map<String, String> test = ImmutableMap.<String, String>builder()  
  4.     .put("k1", "v1")  
  5.     .put("k2", "v2")  
  6.     ...  
  7.     .build();  
相關文章
相關標籤/搜索