배열을 출력하는 가장 간단한 방법알려주세요.

조회수 44324회

배열에서 toString()오버라이드 안하고 출력하려고하는데요. 이상한 값이 출력됐어요

소스코드

    int[] intArray = new int[] {1, 2, 3, 4, 5};
    System.out.println(intArray);     //'[I@3343c8b3' <- 이런값이 나와요 

제가 원하는건 [1,2,3,4,5]인데 말이죠. 어떻게하면 밑에 코드처럼 출력될까요

    // array of primitives:
    int[] intArray = new int[] {1, 2, 3, 4, 5};
    //output: [1, 2, 3, 4, 5]

    // array of object references:
    String[] strArray = new String[] {"John", "Mary", "Bob"};
    //output: [John, Mary, Bob]

1 답변

  • 좋아요

    1

    싫어요
    채택 취소하기

    Java 5를 보면 Arrays.toString(arr)이나 Arrays.deepToString(arr)같은 방법이 있습니다. 근데 toString오버라이드 안한다그러셨으니까 deepToString을 쓰면

    처음에 import하는거 잊지마시구요.

        package packageName;
        import java.util.Arrays;
    

    해주시고

        *// 배열 초기화
        int[] intArray = new int[] {1, 2, 3, 4, 5};
        *// 각 원소 별로 다 출력하고 싶을때 아래의 코드를 쓰세요*
        System.out.print(Arrays.deepToString(*출력할 배열이름*));
        *//intArray일때 출력 결과: [1, 2, 3, 4, 5]*
    
        *// 객체 배열 초기화:*
        String[] strArray = new String[] {"John", "Mary", "Bob"};
        *// 각각의 문자열을 출력하고 싶을때 밑에 코드를 쓰세요*
        System.out.print(Arrays.toString(*출력할 배열 이름*));
        *//strArray일때 출력 결과 : [John, Mary, Bob]*
    

    하시면 됩니다.

    • 오우 간단하네요 ㅎㅎ 감사해요~ 류지훈 2017.8.11 14:34

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)