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

jsbak·2021년 5월 26일
0

알고리즘

목록 보기
3/19

문제 설명

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

제한 조건

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

문제 풀이

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;
    }
}
profile
끄적끄적 쓰는곳

0개의 댓글