Avatar ·

如何在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