- 코딩테스트 문제 풀다가 입력값의 제한 조건으로 "n은 10,000,000,000이하인 자연수"를 만남
- 음.. int로 풀다가는 혼꾸녕이 나겠구나 싶었음...
- 테스트 몇 개 돌렸더니 잘 돌아가서 사이트에 제출했더니 60점 나옴...
// 문제의 코드, 12345를 받아서 [5, 4, 3, 2, 1]을 반환해야 함
public int[] solution(long n) {
int[] result = new int[Long.toString(n).length()];
for (int i = 0; i < result.length; i++) {
result[i] = (int) n % 10; // 문제의 형변환
n /= 10;
}
return result;
}
- n % 10을 먼저 연산하고 int로 형변환하라고 시킨 건데... n을 형변환하는게 먼저였던 거임
- 그냥 long[]을 반환 받았으면 형변환 할 일도 없었는데 int[]로 받겠다고 깝치다가 혼꾸녕이 남...
- 그래도 연산자보다 형변환이 우선인 걸 알았음!