今天碰到一个ArrayList取值问题,特请教各位. ArrayList boxlist=new ArrayList();
for(int n=0;n<10;n++){
boxlist.add(new Integer[j]);
} 本意是想boxlist的值逐一取出放进数据库中,为了知道取出的值是否正确,
所以写了一个输出语句 for (int m = 0; m < boxlist.size(); m++) {
System.out.println("box的值="+boxlist.get(m));
System.out.println(((Integer)boxlist.get(m)).intValue());
} 可以在控制台中可以看到下列错误:
box的值=[Ljava.lang.Integer;@d0d843
java.lang.ClassCastException: [Ljava.lang.Integer; 请问这个怎么解决呢,我一直不明白,为什么会出现这种强制类型转换错误,把
object类型转换成int型是应该用(((Integer)object).intValue())呀.
for(int n=0;n<10;n++){
boxlist.add(new Integer[j]);
} 本意是想boxlist的值逐一取出放进数据库中,为了知道取出的值是否正确,
所以写了一个输出语句 for (int m = 0; m < boxlist.size(); m++) {
System.out.println("box的值="+boxlist.get(m));
System.out.println(((Integer)boxlist.get(m)).intValue());
} 可以在控制台中可以看到下列错误:
box的值=[Ljava.lang.Integer;@d0d843
java.lang.ClassCastException: [Ljava.lang.Integer; 请问这个怎么解决呢,我一直不明白,为什么会出现这种强制类型转换错误,把
object类型转换成int型是应该用(((Integer)object).intValue())呀.
boxlist.add(new Integer[j]);
应该是:
boxlist.add(new Integer(j));上面放的是数组,下面放的才是对象
如果在这里不能得到满意回答,请尝试到IT付费问答社区www.nlld.net提问
new Integer[j]创建的是长度为j的数组