如何在Java中将List<Integer>转换为int[]?
大家好!我是Java新手,遇到了一个问题。我有一个整数列表 `List`,是在数据处理后得到的。我需要将它传递给一个只接受原始数组 `int[]` 的方法。我该怎么做?
我尝试过直接类型转换,但编译器报错。以下是我的代码示例:
```java
List numbers = new ArrayList<>();
numbers.add(10);
numbers.add(20);
numbers.add(30);
// 这样不行——编译错误
int[] array = (int[]) numbers;
```
我明白 `List` 是一个对象,而 `int[]` 是一个原始数组。但如何将它们互相转换呢?我尝试过使用 `toArray()`:
```java
Integer[] array = numbers.toArray(new Integer[0]);
```
但这会得到一个 `Integer[]` 数组,而我需要的是 `int[]`。手动通过循环遍历每个元素是唯一的方法吗?或者有更优雅的解决方案?请告诉我如何正确高效地将 `List` 转换为 `int