如何在java中创建数组列表的数组列表?

如何在java中创建数组列表的数组列表?,java,arraylist,Java,Arraylist,我目前有一个数组,这将非常有效,只是我刚刚意识到我不知道我需要的所有数组的长度。所以我必须切换到ArrayList。我习惯于使用数组,我知道如何遍历它们。如何对ArrayList执行相同的操作 以下作品。。。直到我需要通过迭代更改行大小 Person[][] nameList = new Person[yearsBack][lines]; for (int i=0; i<yearsBack; i++) { for (int j=0; j<lines; j++) {

我目前有一个数组,这将非常有效,只是我刚刚意识到我不知道我需要的所有数组的长度。所以我必须切换到ArrayList。我习惯于使用数组,我知道如何遍历它们。如何对ArrayList执行相同的操作

以下作品。。。直到我需要通过迭代更改行大小

Person[][] nameList = new Person[yearsBack][lines];
for (int i=0; i<yearsBack; i++) {
    for (int j=0; j<lines; j++) {
        nameList[i][j] = new Person(name, gender, rank);
这应该做到:

List<List<Object>> listOfLists = new ArrayList<>();
要循环:

for(List<Object> list : listOfLists){
    for(Object obj : list){
        //do stuff
    }
}
ArrayList可以保存ArrayList对象,因此可以拥有ArrayList数组

import java.util.ArrayList;

public class Test {

    public static void main(String[] args) {
        ArrayList<Object> mainAl = new ArrayList<Object>();
        ArrayList<Integer> al1 = new ArrayList<Integer>();
        ArrayList<String> al2 = new ArrayList<String>();
        ArrayList<Double> al3 = new ArrayList<Double>();
        ArrayList<ArrayList<Object>> al4 = new ArrayList<ArrayList<Object>>();
        al1.add(1);
        al1.add(2);
        al1.add(3);
        al1.add(4);
        al2.add("Hello");
        al2.add("how");
        al2.add("are");
        al2.add("you");
        al3.add(100.12);
        al3.add(200.34);
        al3.add(300.43);
        al3.add(400.56);
        mainAl.add(al1);
        mainAl.add(al2);
        mainAl.add(al3);
        for (Object obj : mainAl) {
            System.out.println(obj);
        }
        al4.add(mainAl);
        for (Object obj : al4) {
            System.out.println(obj);
        }
    }
}

我希望这个示例对您有所帮助。

ArrayList?您看过关于使用和的Java教程吗?您可能对这篇文章感兴趣。如何像使用数组一样访问ArrayList中的特定点?我的意思是,您可以通过list[I][j]在嵌套for循环中访问它们吗?使用list.geti,其中I是索引