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

时间:2015-03-13 05:34:47

标签: java arraylist

我目前有一个数组阵列,这会很棒,除了我刚才意识到我不知道我需要的所有阵列的长度。所以我必须切换到ArrayList。我曾经有一个数组数组,我知道如何迭代它们。你如何用ArrayList s做同样的事情?

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

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);

3 个答案:

答案 0 :(得分:1)

这应该这样做:

List<List<Object>> listOfLists = new ArrayList<>();

循环:

for(List<Object> list : listOfLists){
    for(Object obj : list){
        //do stuff
    }
}

答案 1 :(得分:0)

ArrayList&lt;对象&gt; 可以保存 Arraylist对象,因此您可以拥有arraylists数组。

答案 2 :(得分:0)

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);
        }
    }
}

我希望这个例子对你有所帮助。