[プログラマ]-自然数配列を反転


問題の説明


自然数nを逆さまにして、各数字を要素の配列で返します.例えば、nが12345の場合、[5,4,3,2,1]が返される.

せいげんじょうけん


nは10000000以下の自然数である.

問題を解く


StringBufferのreverse()メソッドを使用して位置を変換します.
次に、toCharArray()を使用してChar[]配列を作成します.
CharaterのgetNumericValue()メソッドは,charからintに変換するint配列[]を生成する.

ソースコード

import java.util.*;

class Solution {
    public int[] solution(long n) {
        String nStr = ""+n; // 숫자를 문자열로 형변환
        // reverse()를 이용하기 위해서 String Buffer 객체 생성
        StringBuffer sb = new StringBuffer(nStr);
        
        String rStr = sb.reverse().toString();  // 문자열의 위치를 변환
        char[] rChar = rStr.toCharArray();  // char 배열로 변환
        
        int[] answer = new int[rChar.length];
        
        // char를 int로 바꿔서 다시 출력함 Character의 getNumericValue(char ch) 이용
        int i=0; // 인덱스용
        for(char c : rChar){
            answer[i++] = Character.getNumericValue(c);
        }
        
        return answer;
    }
}