I want to create a two-dimensional array, each element of which is a list, as in the image.
I tried ArrayList<List<User>>[][] arrayList = new ArrayList[3][3];
Is this a correct solution? Because when I try to add element like below code I get null error.
List<User> list = new ArrayList<User>();
arrayList[0][0].add(list);
User user = new User(1,3,2,6);
arrayList[0][0].get(0).add(user);
System.out.println(arrayList[0][0].get(0).get(0).id);
CodePudding user response:
This compiles and runs for me. Note I changed your definition of "arrayList" to match your diagram better. I think this is what you want. However it's simple to extend if you need something different.
public class ArrayOfList {
public static void main( String[] args ) {
ArrayList<User>[][] arrayOfLists = new ArrayList[ 3 ][ 3 ];
ArrayList<User> list = new ArrayList<User>();
arrayOfLists[0][0] = list;
User user = new User( 1, 3, 2, 6 );
arrayOfLists[0][0].add( user );
System.out.println( arrayOfLists[0][0].get( 0 ).id );
}
}