# 如何在 java 中将`ArrayList`转换为字符串数组

> 原文： [https://beginnersbook.com/2013/12/how-to-convert-arraylist-to-string-array-in-java/](https://beginnersbook.com/2013/12/how-to-convert-arraylist-to-string-array-in-java/)

在这篇文章中，我们共享了两种转换[`ArrayList<String>`](https://beginnersbook.com/2013/12/java-arraylist/)到`String`数组的方法。

### 方法 1：使用`ArrayList get()`方法手动转换

这是将所有`ArrayList<String>`元素复制到`String Array[]`的手动方式。在这个例子中，我们通过三个步骤将整个列表复制到数组中 a）首先我们使用`size()`方法获得`ArrayList`大小 b）使用`get()`方法获取列表的每个元素，最后 c）将每个元素分配给相应的数组元素使用赋值运算符`=`。

```java
package beginnersbook.com;
import java.util.*;

public class ArrayListTOArray {
	public static void main(String[] args) {

		/*ArrayList declaration and initialization*/
		ArrayList<String> arrlist= new ArrayList<String>();
		arrlist.add("String1");
		arrlist.add("String2");
		arrlist.add("String3");
		arrlist.add("String4");

		/*ArrayList to Array Conversion */
		String array[] = new String[arrlist.size()];              
		for(int j =0;j<arrlist.size();j++){
		  array[j] = arrlist.get(j);
		}

		/*Displaying Array elements*/
		for(String k: array)
		{
			System.out.println(k);
		}
	}
}
```

**输出：**

```java
String1
String2
String3
String4
```

### 方法 2：使用`toArray()`方法进行转换

在上面的例子中，我们手动将`ArrayList`的每个元素复制到数组中。但是有一个方法`toArray()`可以将字符串类型的`ArrayList`转换为字符串数组。更多关于[`toArray()`的信息](https://docs.oracle.com/javase/1.5.0/docs/api/java/util/ArrayList.html#toArray())。

```java
package beginnersbook.com;
import java.util.*;

public class Example {
	public static void main(String[] args) {

		/*ArrayList declaration and initialization*/
		ArrayList<String> friendsnames= new ArrayList<String>();
		friendsnames.add("Ankur");
		friendsnames.add("Ajeet");
		friendsnames.add("Harsh");
		friendsnames.add("John");

		/*ArrayList to Array Conversion */
		String frnames[]=friendsnames.toArray(new String[friendsnames.size()]);

		/*Displaying Array elements*/
		for(String k: frnames)
		{
			System.out.println(k);
		}
	}
}
```

输出：

```java
Ankur
Ajeet
Harsh
John
```