我想使用类似以下的代码:
int letterIndex[];
LinkedList<Integer> letterList;
...
if(!letterList.isEmpty()) letterIndex = (Integer[])letterList.toArray();
但是,这是不允许的,显然转换为Integer[]
时,int[]
的投射不会自动装箱。如果不将letterIndex
声明为Integer[]
而不是int[]
,我将如何完成等效?
答案 0 :(得分:2)
您必须创建一个新数组并分配Integer[]
数组中的每个值。
Apache commons-lang有ArrayUtils.toPrimitive(wrapperArray)
。
答案 1 :(得分:0)
你为什么使用原语?
可以将其更改为:
Integer[] letterIndex;