배열을 출력하는 가장 간단한 방법알려주세요.
조회수 44398회
배열에서 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 답변
-
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]*
하시면 됩니다.
댓글 입력