본문 바로가기
카테고리 없음

형변환 ep. 1

by 수수남매 2023. 10. 21.
  • 코딩테스트 문제 풀다가 입력값의 제한 조건으로 "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[]로 받겠다고 깝치다가 혼꾸녕이 남...
    - 그래도 연산자보다 형변환이 우선인 걸 알았음!