我在执行以下操作时遇到了一些问题:
int[] tmpIntList = (int[])MyArrayList.toArray(someValue);
MyArrayList 只包含数字。我得到一个类型转换错误,因为 ArrayList
只返回 Object[]
但为什么不能把它变成一个 int[]
?
最佳答案
ArrayList
不能包含 int
值,因为它由 Object[]
支持(即使是适当的通用)。
最接近的是 Integer[]
- 它不能转换为 int[]
。您必须分别转换每个元素。我相信有些库可以为所有原始类型实现这些转换。
基本上问题在于 Java 泛型不支持原始类型。
关于java - 将 Java 中的 ArrayList.toArray() 类型转换为普通数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2872980/