javadynamicarraylistmultidimensional-array

How to initialize 2D ArrayList in Java?


I want to do 2D dynamic ArrayList example:

[1][2][3]
[4][5][6]
[7][8][9]

and I used this code:

ArrayList<ArrayList<Integer>> group = new ArrayList<ArrayList<Integer>>();
group.add(new ArrayList<Integer>(1, 2, 3));

How could I initialize this ArrayList?


Solution

  • If it is not necessary for the inner lists to be specifically ArrayLists, one way of doing such initialization in Java 7 would be as follows:

    ArrayList<List<Integer>> group = new ArrayList<List<Integer>>();
    group.add(Arrays.asList(1, 2, 3));
    group.add(Arrays.asList(4, 5, 6));
    group.add(Arrays.asList(7, 8, 9));
    for (List<Integer> list : group) {
        for (Integer i : list) {
            System.out.print(i+" ");
        }
        System.out.println();
    }
    

    Demo on ideone.