Java的在还没有发现新写法之前时,我一直是这么初始化List跟Map:

//初始化List
    List<string> list = new ArrayList</string><string>();
    list.add("www.php.cn");
    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", "php.cn");
    //.... 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");
}}
登录后复制

更多Java中List与Map初始化的一些写法相关文章请关注Work网!

09-02 11:54