如何将int []转换为Integer []?

时间:2013-11-13 12:49:01

标签: java android int type-conversion primitive-types

我需要通过intent extras传递原始int数组(int[]),并在扩展的BaseAdapter类中使用它们,所以我需要将int[]转换为Integer[]

我该怎么做?

3 个答案:

答案 0 :(得分:4)

恐怕没有比这更好的解决方案

int[] a1 = ...
Integer[] a2 = new Integer[a1.length];
for(int i = 0; i < a1.length; i++)
   a2[i] = a1[i];

答案 1 :(得分:0)

请参阅以下代码:

int[] old = ....    
Integer[] arr = new Integer[old.length];
System.arraycopy(old, 0, arr, 0, old.length);

或者您可以使用Apache lang library,然后就可以使用ArrayUtils.toObject(int[])方法:

Integer[] newArray = ArrayUtils.toObject(oldArray);

答案 2 :(得分:0)

从@ Eddie的回答here,如果您有权访问Apache lang库,您可能需要查看此内容:

   Integer[] newArray = ArrayUtils.toObject(oldArray);