본문 바로가기

Java

for each로 다중배열 꺼내기

1차원 배열

단순 1차원 배열은 for each를 사용할 때 아래와 같은 방식으로 빼내곤 한다.

int[] arr = {1,2,3,4,5};
 
for (int e : arr) { 
    System.out.println(e)
}
cs

2차원 배열

다음과 같은 2차원 배열을 보자.
length가 각각인 4개의 int 배열이 4개 담겨 있다.
int[][] arr = {
    {555},
    {10,10,10,10,10},
    {20,20,20,20},
    {30,30,30,30,30,30}
};
cs


먼저 1차원 배열과 똑같이 arr 배열의 아이템을 하나씩 꺼낸다. 

{5,5,5} , {10,10,10,10,10} ... 이 통째로 차례차례 e에 담긴다.

거기에 for each문을 한번 더 사용하여 각각의 ef로 하나씩 빼낸다.

for(int[] e:arr) {
    for(int f:e){
        System.out.print(f+" ");
    }
    System.out.println("");
}
cs


5 5 5 

10 10 10 10 10 

20 20 20 20 

30 30 30 30 30 30  


물론 그냥 단순 반복문과 length를 이용하면 간단하지만, 

간결하고 직관적이라 이해가 쉽다.