Ik wil een 2D-array maken waarbij elke cel een ArrayList
is!
Ik overweeg deze definities, maar ik kan er niets aan toevoegen
zijn deze definities waar?!
ArrayList<ArrayList<String>> table = new ArrayList<ArrayList<String>>();
of
ArrayList[][] table = new ArrayList[10][10];
//table.add??????
Help me alsjeblieft
Antwoord 1, autoriteit 100%
Ik wil een 2D-array maken waarbij elke cel een ArrayList is!
Als u een 2D arrayvan ArrayList
wilt maken. Dan kunt u dit doen:
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
Antwoord 2, autoriteit 78%
De beste manier is om een List
te gebruiken binnen een List
:
List<List<String>> listOfLists = new ArrayList<List<String>>();
Antwoord 3, autoriteit 58%
Allereerst, wanneer u een variabele in Java declareert, moet u deze declareren met behulp van Interfaces, zelfs als u de implementatie opgeeft bij het instantiëren ervan
ArrayList<ArrayList<String>> listOfLists = new ArrayList<ArrayList<String>>();
moet worden geschreven
List<List<String>> listOfLists = new ArrayList<List<String>>(size);
Dan moet u alle kolommen van uw 2D-array
instantiëren
for(int i = 0; i < size; i++) {
listOfLists.add(new ArrayList<String>());
}
en u gebruikt het als volgt:
listOfLists.get(0).add("foobar");
Maar als u echt wilt “Maak een 2D-array die elke cel een arrayclist is!”
Dan moet u de Dijkstra Way .
Antwoord 4, Autoriteit 5%
ArrayList<String>[][] list = new ArrayList[10][10];
list[0][0] = new ArrayList<>();
list[0][0].add("test");
Antwoord 5, Autoriteit 4%
Dit kan bereiken door een object van lijststructuur te maken, als volgt
Lijstlijst = nieuwe arrayclist ();
Raadpleeg deze link