2016-04-27 9 views
0

Ich muss 10 ArrayLists für ein Projekt verwenden, anstatt 10 separate Arraylists zu erstellen. Mir wurde gesagt: ArrayList<ArrayList<Integer>> lists = new ArrayList<>(); und die 10 zu verwendenden Arrays zu erstellen: for(int i=0;i<10;i++){ lists.add(new ArrayList<Integer>());ArrayList von Arraylits

Ich habe nie Arraylisten innerhalb einer Arraylist untersucht, also ist dies für mich sehr neu. Wie greife ich auf die Arrays innerhalb des Arrays zu? Sie haben keinen Namen, auf den ich zugreifen kann, also wie rufe ich jede einzelne Arraylist an?

+0

Wie würden Sie jedes Element innerhalb einer Liste bekommen? –

+0

Ich muss nur wissen, wie ich auf jede einzelne erstellte Arraylist für das Projekt zugreifen kann, ich weiß nicht einmal, wie ich einen der inneren Arraylisten aufrufen soll. Ich weiß, wie man die Arraylisten und die Methoden benutzt, ich verstehe einfach nicht, wie man auf sie innerhalb der größeren arraylist zugreift –

+1

Einfach denken, dass Sie eine Liste der Gegenstände haben. Jedes dieser Objekte ist zufällig eine andere Liste. Wenn Sie wissen, wie man eine Liste verwendet, dann sollte die Verwendung des inneren einfach sein –

Antwort

2

Um eine Nummer zu einer Liste in der Liste der Listen hinzufügen, müssen Sie get es mit seinem Index, dann können Sie add zu ihm.

lists.get(0).add(42); 
4

Sie können eine Arraylist von Arraylists erstellen, wie im folgenden Code gezeigt. Wenn Sie auf alle internen Array-Listen zugreifen möchten, verwenden Sie einfach a für jede Schleife. Wenn Sie eine bestimmte Liste wollen (Array-Liste ist zu bestellen) nur den Index verwenden (beide Wege sind im Beispiel unten):

ArrayList<ArrayList<String>> listOfLists = new ArrayList<ArrayList<String>>(); 
ArrayList<String> firstList = new ArrayList<String>() {{ 
    add("A"); 
    add("B"); 
    add("C"); 
}}; 

ArrayList<String> secondList = new ArrayList<String>() {{ 
    add("D"); 
    add("E"); 
    add("F"); 
}}; 


listOfLists.add(firstList); 
listOfLists.add(secondList); 

//access all inner lists 
for(ArrayList<String> innerList:listOfLists) { 
    System.out.println("INNER LIST --> "+innerList); 
} 

//access specific list 
System.out.println(listOfLists.get(1)); 
2

Lassen Sie sagen, Sie wollen Zugang einige Index eines bestimmten Arraylist in der Arraylist von Arraylist

z

arrayListOfarrayList.get(indexOfArrayList).get(indexOfElement); 

Wenn Sie etwas

arrayListOfarrayList.get(indexOfArrayList).add(yourElement); 

Sie wollen hinzufügen können, siehe API-Dokumentation zu Arraylist für weitere Details https://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html

+0

Es sollte 'arrayListOfarrayList.get (indexOfArrayList) .add (Element);' – Ambrish

+0

Danke für das hinweisend. Ich habe das aktualisiert :) –