1
我在这里试图从我的二维ArrayList
得到一个元素,但得到IndexOutOfBoundException
错误。我在这里做错了什么?我是否需要首先分配一个简单数组中的空间?如果是这样,我怎样才能做到二维数组?以下是代码,二维ArrayList错误
import java.util.ArrayList;
public class Test {
private ArrayList<ArrayList<String>> array;
public Test(){
array = new ArrayList<ArrayList<String>>();
array.get(0).set(0, "00");
array.get(0).set(1, "01");
array.get(0).set(2, "02");
array.get(1).set(0, "10");
array.get(1).set(1, "11");
array.get(1).set(2, "12");
array.get(2).set(0, "20");
array.get(2).set(1, "21");
array.get(2).set(2, "22");
}
public String getE(int a, int b){
return array.get(a).get(b);
}
public static void main(String[] args) {
Test object = new Test();
System.out.println(object.getE(0, 0)); // This gives me the error.
}
}
我不是在构造函数中做的吗?我不是用这行代码初始化ArrayList array = new ArrayList>();'? –
Zip
哦,我明白了。我是否必须为每一行初始化一个新的'ArrayList'才能获得二维数组列表? – Zip
@Zip你正在用构造函数制作一个**空**'ArrayList>'。您需要将初始化的'ArrayList '添加到'array'。 –
fvrghl