原文: https://beginnersbook.com/2013/12/how-to-initialize-an-arraylist/

在上一篇文章中,我们讨论了 Java 中的类ArrayList,它是重要的方法。在这里,我们分享了多种使用示例初始化ArrayList的方法。

方法 1:使用Arrays.asList进行初始化

语法:

  1. ArrayList<Type> obj = new ArrayList<Type>(
  2. Arrays.asList(Object o1, Object o2, Object o3, ....so on));

示例:

  1. import java.util.*;
  2. public class InitializationExample1 {
  3. public static void main(String args[]) {
  4. ArrayList<String> obj = new ArrayList<String>(
  5. Arrays.asList("Pratap", "Peter", "Harsh"));
  6. System.out.println("Elements are:"+obj);
  7. }
  8. }

输出:

  1. Elements are:[Pratap, Peter, Harsh]

方法 2:初始化ArrayList的匿名内部类方法

Syntax:

  1. ArrayList<T> obj = new ArrayList<T>(){{
  2. add(Object o1);
  3. add(Object o2);
  4. add(Object o3);
  5. ...
  6. ...
  7. }};

示例:

  1. import java.util.*;
  2. public class InitializationExample2 {
  3. public static void main(String args[]) {
  4. ArrayList<String> cities = new ArrayList<String>(){{
  5. add("Delhi");
  6. add("Agra");
  7. add("Chennai");
  8. }};
  9. System.out.println("Content of Array list cities:"+cities);
  10. }
  11. }

输出:

  1. Content of Array list cities:[Delhi, Agra, Chennai]

方法 3:ArrayList初始化的正常方式

语法:

  1. ArrayList<T> obj = new ArrayList<T>();
  2. obj.add("Object o1");
  3. obj.add("Object o2");
  4. obj.add("Object o3");
  5. ...
  6. ...

示例:

  1. import java.util.*;
  2. public class Details {
  3. public static void main(String args[]) {
  4. ArrayList<String> books = new ArrayList<String>();
  5. books.add("Java Book1");
  6. books.add("Java Book2");
  7. books.add("Java Book3");
  8. System.out.println("Books stored in array list are: "+books);
  9. }
  10. }

输出:

  1. Books stored in array list are: [Java Book1, Java Book2, Java Book3]

方法 4:使用Collections.ncopies

Collections.ncopies方法可以在我们需要为其所有元素初始化ArrayList时使用相同的值。语法:count是元素数,element是项目值。

  1. ArrayList<T> obj = new ArrayList<T>(Collections.nCopies(count, element));

示例:

  1. import java.util.*;
  2. public class Details {
  3. public static void main(String args[]) {
  4. ArrayList<Integer> intlist = new ArrayList<Integer>(Collections.nCopies(10, 5));
  5. System.out.println("ArrayList items: "+intlist);
  6. }
  7. }

输出:

  1. ArrayList items: [5, 5, 5, 5, 5, 5, 5, 5, 5, 5]