我想创建一个每个单元格都是一个二维数组ArrayList
!
我考虑了这个定义,但我不能添加任何东西这些定义是真的吗?!
ArrayList<ArrayList<String>> table = new ArrayList<ArrayList<String>>();
或者
ArrayList[][] table = new ArrayList[10][10];
//table.add??????
请帮我
我想创建一个每个单元格都是一个二维数组ArrayList
!
我考虑了这个定义,但我不能添加任何东西这些定义是真的吗?!
ArrayList<ArrayList<String>> table = new ArrayList<ArrayList<String>>();
或者
ArrayList[][] table = new ArrayList[10][10];
//table.add??????
请帮我
我想创建一个二维数组,每个单元格都是一个 ArrayList!
如果你想创建一个二维数组。ArrayList
那么你可以这样做:
ArrayList[][] table = new ArrayList[10][10];
table[0][0] = new ArrayList(); // add another ArrayList object to [0,0]
table[0][0].add(); // add object to that ArrayList
最好的方法是在 a 中使用List
a List
:
List<List<String>> listOfLists = new ArrayList<List<String>>();
首先,当你在java中声明一个变量时,你应该使用接口声明它,即使你在实例化它时指定了实现
ArrayList<ArrayList<String>> listOfLists = new ArrayList<ArrayList<String>>();
应该写
List<List<String>> listOfLists = new ArrayList<List<String>>(size);
然后你必须实例化你的二维数组的所有列
for(int i = 0; i < size; i++) {
listOfLists.add(new ArrayList<String>());
}
你会像这样使用它:
listOfLists.get(0).add("foobar");
但是如果你真的想“创建一个每个单元格都是一个 ArrayList 的二维数组!”
那么你必须走dijkstra 路。
ArrayList<String>[][] list = new ArrayList[10][10];
list[0][0] = new ArrayList<>();
list[0][0].add("test");