我需要通过intent extras传递原始int
数组(int[]
),并在扩展的BaseAdapter
类中使用它们,所以我需要将int[]
转换为Integer[]
我该怎么做?
答案 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);