Je veux créer un tableau 2D que chaque cellule est un ArrayList
!
Je considère cette définition, mais je ne peux rien y ajouter. Ces définitions sont-elles vraies?!
ArrayList<ArrayList<String>> table = new ArrayList<ArrayList<String>>();
ou
ArrayList[][] table = new ArrayList[10][10];
//table.add??????
Aidez-moi, s'il vous plaît
Je veux créer un tableau 2D dans lequel chaque cellule est une ArrayList!
Si vous voulez créer un --- array of ArrayList
2D, vous pouvez le faire:
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
Le meilleur moyen est d'utiliser List
avec in List
List<List<String>> listOfLists = new ArrayList<List<String>>();
Tout d'abord, lorsque vous déclarez une variable en Java, vous devez la déclarer à l'aide d'interfaces même si vous spécifiez l'implémentation lors de son instanciation.
ArrayList<ArrayList<String>> listOfLists = new ArrayList<ArrayList<String>>();
devrait être écrit
List<List<String>> listOfLists = new ArrayList<List<String>>(size);
Ensuite, vous devrez instancier toutes les colonnes de votre tableau 2D
for(int i = 0; i < size; i++) {
listOfLists.add(new ArrayList<String>());
}
Et vous allez l'utiliser comme ça:
listOfLists.get(0).add("foobar");
Mais si vous voulez vraiment "créer un tableau 2D que chaque cellule est une ArrayList!"
Ensuite, vous devez aller à la voie dijkstra .
ArrayList<String>[][] list = new ArrayList[10][10];
list[0][0] = new ArrayList<>();
list[0][0].add("test");
Ceci peut être réalisé en créant un objet de structure de données List, comme suit
List list = new ArrayList ();
Pour plus d'informations, consultez ce lien.
Comment créer une liste multidimensionnelle ArrayList en Java?