어제 오늘 내일

[Java] 배열 값 출력하는 2가지 방법 (반복문, Arrays.toString()) 본문

IT/Java

[Java] 배열 값 출력하는 2가지 방법 (반복문, Arrays.toString())

hi.anna 2021. 4. 16. 09:50

 

이번 포스팅에서는 반복문과 java.util.Arrays의 toString() 메소드를 이용하여

배열의 값을 출력하는 방법을 소개합니다.

 

 

먼저, 그냥 배열의 값을 출력해 볼까요?

 

[ 코드 ]

public class PrintArray {
    public static void main(String[] args) {
        int[] arr = { 1, 2, 3, 4, 5 };

        System.out.println(arr);  // ??
    }
}

 

[ 결과 ]

[I@762efe5d

위와 같이 그냥 배열 변수(arr)를 출력하면 알수 없는 값이 출력됩니다.

아마도, 여러분들이 위 코드를 돌리면 저와는 또 다른 값이 출력될 것입니다.

왜냐하면, 여기서 출력된 값은 arr라는 변수가 가리키고 있는, 

[1, 2, 3, 4, 5] 값이 들어있는 메모리의 주소값이기 때문입니다.

arr를 그대로 출력하면, 위와 같이 메모리의 주소값이 출력되기 때문에,

배열을 출력하기 위해서는

반복문을 사용하거나, 배열을 출력할 수 있는 특별한 메소드를 사용해야 합니다.

 

 

Solution 1. 반복문 사용하기

[ 코드 ]

public class PrintArray {
    public static void main(String[] args) {
        int[] arr = { 1, 2, 3, 4, 5 };

        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }
}

 

[ 결과 ]

1
2
3
4
5

위 코드는 반복문을 사용해서

배열의 각 index값을 읽어서, 값을 출력하였습니다.

 

 

Solution 2. java.util.Arrays의 toString() 메소드 사용하기

[ 코드 ]

import java.util.Arrays;

public class PrintArray {
    public static void main(String[] args) {
        int[] arr = { 1, 2, 3, 4, 5 };

        System.out.println(Arrays.toString(arr));
    }
}

 

[ 결과 ]

[1, 2, 3, 4, 5]

 

Arrays.toString(arr);

위 코드에서는 배열의 값을 출력하기 위해서

java.util.Arrays.toString() 메소드를 사용하였습니다.

java.util.Arrays.toString() 메소드는 파라미터로 배열을 입력받아서,

배열에 정의된 값들을 문자열 형태로 만들어서 리턴해 줍니다.

 

 

반응형
Comments