2013-02-08 4 views
2

ArrayList 내에서 ArrayList를 어떻게 반복합니까?Java ArrayList 개념

예를 들어 Plant objects라는 plants라는 ArrayList가있는 경우를들 수 있습니다. 그리고 각 Plant 객체는 내부에 임의의 숫자의 flowerNames를 가지고 있습니다. 어떻게하면 ArrayList를 살펴보고, 각 플랜트에서 멈추고 플랜트의 flowerNames 목록을 인쇄 할 수 있습니까? (그냥 예) 다음, 다음 식물로 이동 등

식물 : 꽃의 ArrayList를 가지고

공장은 하나 개의 클래스에 flowerNames의 ArrayList에 있으며, 꽃은 다른 클래스에를

표준 for 루프를 사용하여이 작업을 수행 할 수 있습니까? 중재하지 않아 ...?

+0

루프는 중첩 될 수 있습니다. 시도해보고 코드를 작성하십시오. –

+0

Lambdaj 또는 Guava를 사용하여 멋지게 꾸미십시오. – Shashi

답변

3

다음과 같이 시도해보십시오.

for(Plant plant : plants) { 
    for(Flowers flower : plant.getFlowers()) { 
     System.out.println(flower.getName()); 
    } 
} 
0
ArrayList<Object> outerList = new ArrayList<Object>(); 
    ArrayList<Object> innerList = new ArrayList<Object>(); 

    for(Object outer: outerList){ 
     for(Object inner: innerList){ 

      //Perform operation with innerList. Print or something else. 
     } 
    } 
0

당신이 방법의 또 다른 목록 개체 사용 인스턴스를 얻을 확인되는 위치에 확실하지 않은 경우. 샘플 코드는 여기에 있습니다.

for(int i=0;i<l1.size();i++){ 
    if(!(l1.get(i) instanceof List<?>)){ 
    System.out.println(l1.get(i)); 
    } 
    else { 
    for(int j=0;j<((List)l1.get(i)).size();j++){ 
     System.out.println(((List)l1.get(i)).get(j)); 
    } 
    } 
    }