알게된점 - 1. Arrays.sort(With Comparator)는 Object(객체자료형)의 자손에 대해서만 정의되므로 기본자료형(Primitive) 에는 작동하지 않는다. Collections.reverseOrder() returns a Comparator<Object>

(참고:https://stackoverflow.com/questions/5584579/how-to-sort-an-array-in-reverse-order-using-java)  

2.  toCharArray-문자열을 char형 배열로,   String.valueOf(배열) -- 배열을 문자열로   Integer.parseInt Long.parseLong

나의풀이

import java.util.*;
import java.lang.*;

class Solution {
    public long solution(long n) {
        long answer = 0;
        //자릿수구하는 함수--숫자로풀기
        //string->long 내림차순--문자열로풀기 String.valueOf 
        //문자열 char배열로   문자열.toCharArray();
        String temp=String.valueOf(n);
        char [] hi=temp.toCharArray();
       // System.out.println(temp.length());
        char [] hi2=new char[temp.length()];
        Arrays.sort(hi);
        //Arrays.sort 기본자료형이 아닌 객체자료형 object의자손에만 적용
        for(int i=0;i<hi.length;i++)
        {
            hi2[i]=hi[hi.length-1-i];
        }
        
        answer=Long.parseLong(String.valueOf(hi2));
        return answer;
    }
}

람다식,스트림에 대해서 배우고 써먹어봐는것도 필요할듯함

+ Recent posts