2

如何将 int 值转换为整数值?

这是我的代码-

private static int[] value= {R.drawable.collection1,R.drawable.collection2}

public static ArrayList<Integer> AddIntValue (int[] value){
    ArrayList<Integer> Intvalue=new ArrayList<Integer>();

    for(int i=0;i<value.length; i++)
    {
        Intvalue.add(Integer.valueOf(value[i]), null);
    }

    return Intvalue;
}

Intvalue.add(Integer.valueOf(value[i]), null);上出现错误

请帮我

谢谢

4

2 回答 2

5

java 5 添加了自动装箱,所以你应该可以使用它

int i=3;
Integer number=i;//number now equals 3

您收到错误的原因是因为您使用数组作为索引并尝试在此索引处添加 null。如果您的数组是 {100,101,102},它会尝试在不存在的索引 100、101 和 102 处将 null 添加到 intValues,从而为您提供 IndexOutOfBoundsEception;

于 2012-11-17T15:58:02.517 回答
0

如果您想使用您的代码并且仍然可以控制元素列表索引,您必须: 1. 初始化 ArrayList 大小 2. 正确使用 add 方法

public static List<Integer> addIntValue(int[] value) {
    List<Integer> intValues = new ArrayList<Integer>(value.length);

    for (int i = 0; i < value.length; i++) {
        intValues.add(i, value[i]);
    }

    return intValues;
}
于 2012-11-17T12:49:12.343 回答