2013-12-09 2 views
4

У меня есть следующие ArrayList ...Итерация через ArrayList из ArrayLists в Java

ArrayList<ArrayList<Integer>> row1 = new ArrayList<ArrayList<Integer>>(); 

Следующие ArrayLists добавляют к нему ....

row1.add(cell1); 
row1.add(cell2); 
row1.add(cell3); 
row1.add(cell4); 
row1.add(totalStockCell); 

Я хочу, чтобы перебирать arraylist row1 и распечатать содержимое.

Будет ли цикл в цикле работать здесь?

E.g.

while(it.hasNext()) { 

//loop on entire list of arraylists 
    while(it2.hasNext) { 
     //each cell print values in list 

      } } 
+0

Пытались ли вы это? –

ответ

1
for (ArrayList<Integer> list : row1) 
{ 
    for (Integer num : list) 
    { 
     //doSomething 
    } 
} 

Java повышенной для петель использовать итератор за кулисами.

3

Это канонический путь вы это делаете:

for(List<Integer> innerList : row1) { 
    for(Integer number : innerList) { 
     System.out.println(number); 
    } 
} 
0

Если вы хотите использовать итератор, вложенные циклы будут работать:

Iterator<ArrayList<Integer>> it = row1.iterator(); 

    while(it1.hasNext()) 
     { 
     Iterator<Integer> itr = it.next().iterator(); 
     while(itr.hasNext()) 
      { 
      System.out.println(itr.next()); 
      } 
     } 
Смежные вопросы