함수 solution은 정수 n을 매개변수로 입력받습니다.
n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요.
예를들어 n이 118372면 873211을 리턴하면 됩니다.
• n은 1이상 8000000000 이하인 자연수입니다.
n | return |
---|---|
118372 | 873211 |
class Solution {
public long solution(long n) {
String[] str = Long.toString(n).split("");
Arrays.sort(str, Collections.reverseOrder());
String answer = "";
for(String s : str) {
answer += s;
}
return Long.parseLong(answer);
}
}
Long.toString()
으로 String으로 만든 후, split("")
메서드를 사용하여 문자열을 배열로 변환.join()
메서드Arrays.sort()
메서드로 정렬하지만, sort()
에 Collections.reverseOrder()
를 두 번째 매개변수로 넣어주면 내림차순으로 정렬됨.Long.parseLong()
메서드를 통해 String타입에서 Long타입으로 형변환.long타입과 String타입간의 형변환과 문자열을 배열로 변환하는 법을 배웠고,
배열과 리스트의 오름차순 및 내림차순 정렬 메서드 또한 익혔다ㅎㅎㅎ^^v
향상된 for문은 머릿속으로는 알고 있는데 어쩐지 자주 안써진다ㅠㅠㅠ
계속 쓰는 습관을 들여야 자연스럽게 머릿속에 딱 떠오를텐데,,,
역시 백문이불여일타 더 분발하자!!!!!!!!🔥🔥🔥🔥🔥