在Java中,将集合转换为数组可以通过以下几种方法:
1. 使用 `toArray()` 方法:
```java
Collection
// 添加元素到集合
collection.add(1);
collection.add(2);
collection.add(3);
// 将集合转换为 Integer 数组
Integer[] array = collection.toArray(new Integer);
2. 使用 `toArray(T[] a)` 方法:
```java
Collection
collection = new LinkedList<>(); // 添加元素到集合
collection.add("a");
collection.add("b");
collection.add("c");
// 将集合转换为 String 数组,并指定数组大小
String[] array = collection.toArray(new String);
3. 使用Java 8引入的流(Streams)API:
```java
List
// 添加元素到集合
list.add(1);
list.add(2);
list.add(3);
// 使用流将集合转换为数组
Integer[] array = list.stream().mapToInt(Integer::intValue).toArray();
以上方法中,推荐使用 `new T` 作为 `toArray()` 方法的参数,因为它可以避免在集合大小已知时的不必要数组创建和复制。
需要注意的是,`toArray()` 方法默认返回一个 `Object[]` 数组,如果需要特定类型的数组,则需要进行强制类型转换。