# 如何初始化`ArrayList`

> 原文： [https://beginnersbook.com/2013/12/how-to-initialize-an-arraylist/](https://beginnersbook.com/2013/12/how-to-initialize-an-arraylist/)

在上一篇文章中，我们讨论了 Java 中的类[`ArrayList`](https://beginnersbook.com/2013/12/java-arraylist/)，它是重要的方法。在这里，我们分享了多种使用示例初始化`ArrayList`的方法。

### 方法 1：使用`Arrays.asList`进行初始化

**语法：**

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

**示例：**

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

输出：

```java
Elements are:[Pratap, Peter, Harsh]
```

### 方法 2：初始化`ArrayList`的匿名内部类方法

**Syntax:**

```java
ArrayList<T> obj = new ArrayList<T>(){{
		   add(Object o1);
		   add(Object o2);
		   add(Object o3);
                   ...
                   ...
		   }};
```

**示例：**

```java
import java.util.*;
public class InitializationExample2 {
   public static void main(String args[]) {
	   ArrayList<String> cities = new ArrayList<String>(){{
		   add("Delhi");
		   add("Agra");
		   add("Chennai");
		   }};
	  System.out.println("Content of Array list cities:"+cities);
   }
}
```

输出：

```java
Content of Array list cities:[Delhi, Agra, Chennai]
```

### 方法 3：`ArrayList`初始化的正常方式

**语法：**

```java
ArrayList<T> obj = new ArrayList<T>();
	   obj.add("Object o1");
	   obj.add("Object o2");
	   obj.add("Object o3");
                        ...
                        ...
```

**示例：**

```java
import java.util.*;

public class Details {
   public static void main(String args[]) {
	   ArrayList<String> books = new ArrayList<String>();
	   books.add("Java Book1");
	   books.add("Java Book2");
	   books.add("Java Book3");
	  System.out.println("Books stored in array list are: "+books);
   }
}
```

输出：

```java
Books stored in array list are: [Java Book1, Java Book2, Java Book3]
```

### 方法 4：使用`Collections.ncopies`

[`Collections.ncopies`](http://java.sun.com/javase/6/docs/api/java/util/Arrays.html#asList%28T...%29)方法可以在我们需要为其所有元素初始化`ArrayList`时使用相同的值。语法：`count`是元素数，`element`是项目值。

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

**示例：**

```java
import java.util.*;

public class Details {
   public static void main(String args[]) {
	   ArrayList<Integer> intlist = new ArrayList<Integer>(Collections.nCopies(10, 5));
	  System.out.println("ArrayList items: "+intlist);
   }
}
```

输出：

```java
ArrayList items: [5, 5, 5, 5, 5, 5, 5, 5, 5, 5]
```