정수 내림차순으로 배치하기 Lv. 1

박영준·2022년 11월 22일
0

코딩테스트

목록 보기
24/300
class Solution {
    public long solution(long n) {
        long answer = 0;
        return answer;
    }
}

해결법

방법 1

import java.util.*;

class Solution {
    public long solution(long n) {
        long answer = 0;
        
        // 정수 타입 n 을 string 문자열로 변환
        String str = String.valueOf(n);
        
        // str 문자열을 char형 배열 s 로 변환 (한 자리씩 char에 초기화)
        char[] s = str.toCharArray();
        
        // char형 배열 s 를 오름차순으로 정렬
        Arrays.sort(s);
        
        // 문자열 sb 를 내림차순으로 정렬 (reverse()은 배열 순서를 뒤집고, toString()은 문자열로 변환)
        String sb = new StringBuilder(new String(s)).reverse().toString();
        
        // 문자열 sb를 다시 long 타입으로 변환
        return Long.parseLong(sb);
    }
}
  • reverse() : 배열의 순서를 반전

  • StringBuilder : 문자열 String 을 합칠 때는 StringBuilder 클래스를 사용

    참고: string, stringbuffer, stringbuilder

  • int타입 --> String 문자열 타입 (2가지 방법)

    • String.valueOf(변경 할 타입) : 변경할 타입에 어떤 타입이 오든, 모두 String 문자열 타입으로 변환
    • Integer.toString(int 타입 변수)
  • 만약, 입력된 문자열이 Null이라면?

    • String.valueOf() : "null"이라는 문자열로 처리
    • Integer.toString() : "Null PointerException"이라는 오류를 발생시킴.
      --> null 조차도 오류가 아닌 문자열로 처리해야 한다면 String.valueOf()를 사용하면 된다.

정수 내림차순으로 배치하기 Lv. 1

profile
개발자로 거듭나기!

0개의 댓글