常见得几种新建一个带有数据的list方法

/**
 * 常见得几种新建一个带有数据的list方法
 */
public class Demo1 {
    public static void main(String[] args){
        String[] strings = new String[]{
                "one","two","three"
        };
        //然而list没有这种写法,下面写法会直接报错
        //List<String> list = new ArrayList<>(){"one","two","stree"};

        //Arrays工具类
        List<String> list1 = Arrays.asList("1", "2", "aaa");
        System.out.println(Arrays.asList("1","2","aaa"));
        System.out.println(list1);

        //使用已有的list
        ArrayList<String> list2 = new ArrayList<>(list1);
        System.out.println(list2);

        //生成匿名内部类进行初始化
        ArrayList<String> list3 = new ArrayList<String>() {
         
  {
            add("3");
            add("4");
            add("bbb");
        }};
        System.out.println(new ArrayList<String>() {
         
  {
            add("3");
            add("4");
            add("bbb");
        }});
        System.out.println(list3);

        //Collections的方法
        ArrayList<String> list4 = new ArrayList<>(Collections.nCopies(4, "ccc"));//把element复制count次填入ArrayList中
        System.out.println(new ArrayList<>(Collections.nCopies(4, "ccc")));
        System.out.println(list4);
    }
}

输出结果

[1, 2, aaa]
[1, 2, aaa]
[1, 2, aaa]
[3, 4, bbb]
[3, 4, bbb]
[ccc, ccc, ccc, ccc]
[ccc, ccc, ccc, ccc]
经验分享 程序员 微信小程序 职场和发展