欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

批量添加集合元素

最编程 2024-04-21 12:35:43
...

方法一:

Collections.addAll() 方法内部会迭代传递给它的元素列表,并将每个元素添加到目标集合中。

List<Integer> list = new ArrayList<>();

Collections.addAll(list,1,2,3,4,5);

方式二:

ArrayList 类有一个构造函数,它接受一个 Collection 类型的参数,并使用该参数中的元素初始化列表。在这个例子中,传递给 ArrayList 构造函数的参数是一个由 Arrays.asList() 方法返回的列表,因此 ArrayList 将使用该列表中的元素来初始化自己。

List<Integer> list = new ArrayList<>(Arrays.asList(1,2,3,4,5));

方式三: 

  1. 匿名内部类: 在 Java 中,匿名内部类是一种没有名字的局部类,它可以在创建对象的同时定义类的实例化过程。在这个例子中,new ArrayList<>() { ... } 创建了一个匿名内部类的实例,该内部类是 ArrayList 的一个子类。

  2. 构造代码块: 匿名内部类中的代码块被称为构造代码块,它们在对象创建时被执行,并且在构造函数执行之前执行。在这个例子中,{ ... } 中的代码块被称为构造代码块,它包含了一系列的 add() 方法调用,用于向列表中添加整数元素。

  3. 工作原理: 当创建匿名内部类的实例时,首先会执行构造代码块中的代码,然后再执行父类的构造函数。在这个例子中,构造代码块中的 add() 方法调用会将整数 1 到 5 依次添加到列表中。最后,创建的列表对象被赋值给了 List<Integer> 类型的变量 list

    这种方式的好处是,可以在创建对象时执行一些额外的初始化代码,而无需为类定义一个具名的子类。这在一些情况下非常方便,尤其是当需要对对象进行一些特定的初始化操作时。

 

 List<Integer> list = new ArrayList<>(){
            {
                add(1);
                add(2);
                add(3);
                add(4);
                add(5);
            }
        };

推荐阅读