【发布时间】:2017-11-15 22:48:45
【问题描述】:
private ArrayList<ArrayList<Integer>> list ;
int size = list.size();
int[][] iArray = new int[size][size];
for (int i=0; i<size; ++i){
for (j = 0; j<size; ++j){
iArray[i][j] = list.get(j +( list.size() * i));
}
}
我正在使用以下代码,但它给了我错误。请提出建议。
【问题讨论】:
-
您正在尝试创建大小为 0x0 的二维数组...
-
@RAZ_Muh_Taz 你为什么这么说?
-
哪个是错误?如果您希望别人帮助您,您应该在提问时提供尽可能多的详细信息。即使您使用适当的值加载列表,也会收到 ArrayIndexOutOfBoundsException。在
list.get(j +( list.size() * i))中,您超出了列表的范围。例如。如果列表大小为 10,我将从 0 循环到 9。假设 i 为 2。那么list.size() * i为 20,即使 j 为 0,您将要求列表中的第 20 个项目,该项目不存在。 -
你必须在forloop中指定变量类型j for (int j = 0; j