프로그래머스 [JAVA] :: 자연수 뒤집어 배열로 만들기

s_omi·2023년 1월 27일
0
post-custom-banner

📚 문제 정의

자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를 들어, n이 12345이면 [5,4,3,2,1]을 리턴합니다.


📝 제한사항

  • n은 10,000,000,000이하인 자연수입니다.

📝 입출력 예

nanswer
12345[5,4,3,2,1]

💡 코드

class Solution {
    public int[] solution(long n) {
        String nString = String.valueOf(n);
        int[] answer = new int[nString.length()];
        
        for(int i = 0; i < nString.length(); i++) {
            answer[i] = Integer.parseInt(String.valueOf(nString.charAt(nString.length() - i - 1)));
        }
        
        return answer;
    }
}

charAt()을 사용하려고 형변환을 여러 번 했더니 코드가 좀 길어졌다.


💡 다른 코드

class Solution {
   public int[] solution(long n) {
      String a = "" + n;
      int[] answer = new int[a.length()];
      int cnt=0;

      while(n > 0) {
          answer[cnt] = (int)(n % 10);
          n /= 10;
          cnt++;
      }
      return answer;
   }
}

💡 다른 코드

import java.util.stream.IntStream;

class Solution {
    public int[] solution(long n) {
        return new StringBuilder().append(n).reverse().chars().map(Character::getNumericValue).toArray();
    }
}
profile
공부한 거 올려요 :)
post-custom-banner

0개의 댓글