Java的在还没有发现新写法之前时,我一直是这么初始化List跟Map:
//初始化List
List<string> list = new ArrayList</string><string>();
list.add("www.jb51.net");
list.add("string2");
//some other list.add() code......
list.add("stringN");
//初始化Map
Map</string><string , String> map = new HashMap</string><string , String>();
map.put("key1", "value1");
map.put("key2", "value2");
//.... some other map.put() code
map.put("keyN", "valueN");
</string>
好麻烦啊。。。。。有一天撸到这样的一种方式:
//初始化List
List<string> list = new ArrayList</string><string>(){{
add("string1");
add("string2");
//some other add() code......
add("stringN");
}};
//初始化Map
Map</string><string , String> map = new HashMap</string><string , String>(){{
put("key1", "value1");
put("key2", "jb51.net");
//.... some other put() code
put("keyN", "valueN");
}};
</string>
虽然看起来没少写多少代码,但是个人觉得这种方式还是简洁多了很多,很流畅啊哈哈~
例,后现一聚小编测试了List两个实例更简单
方法一:
利用Array与ArrayList的相互转换方法,代码如下:
rrayList<String> list = new ArrayList(Arrays.asList("Ryan", "Julie", "Bob"));
方法二:
利用ArrayList的add方法完成初始化赋值,代码如下:
List list = new ArrayList<String>(){{
add("A");
add("B");
}}