孔乙己:(Java)List有三种写法

这几天撸java8代码,查看同人们写的各种代码例子,发现list的创建・初始化有好多种方式,索性总结一下。

特此声明:

list的创建・初始化写法,不局限于这里所说的三种,这里只是总结了一下本人常用的三种写法。

■写法1_new ArrayList<T>()

        List<String> strList = new ArrayList<String>();
        strList.add("str1");
        strList.add("str2");
        strList.add("str3");

■写法2_Arrays.asList

List<String> strList = Arrays.asList("str1","str2","str3");

注意:这种方法初始化的list不能追加新元素或删除元素。只适用初始化常量。

・追加元素

        List<String> strList = Arrays.asList("str1", "str2", "str3");
        strList.add("str4");
        strList.forEach(System.out::println);

・删除元素

        List<String> strList = Arrays.asList("str1", "str2", "str3");
        strList.remove(1);
        strList.forEach(System.out::println);

对上面error信息感兴趣的小伙伴可以自行去调查下。

■写法3_new ArrayList<T>(){{}}

        List<String> strList = new ArrayList<String>() {{
            add("str1");
            add("str2");
            add("str3");
        }};

小结

《孔乙己》课文告诉我们,不要太较真哪种写法好,根据实际情况选择合适正确的写法,把代码写得既美观又规整,这就是最好的。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注