https://school.programmers.co.kr/learn/courses/30/lessons/12933?language=java
2-2 직접 내림차순 코드를 이중 for문을 사용하였다.
⚠️ import시
import.java.util.*; 하면 Stream을 인식하지 못한다...
import java.util.stream.*;
class Solution {
public long solution(long n) {
long answer = 0;
long[] nums = Stream.of(String.valueOf(n).split(""))
.mapToLong(Long::parseLong)
.toArray();
//내림차순
for (int i = 0; i < nums.length; i++) {
for (int j = 1 + i; j < nums.length; j++) {
if (nums[i] < nums[j]) {
Long temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
}
//배열 -> 하나의 숫자열
StringBuilder stringBuilder = new StringBuilder();
for (long num : nums) {
stringBuilder.append(num);
}
answer = Long.valueOf(stringBuilder.toString());
return answer;
}
}
Stirng.valueOf(value) vs toString
toString
과 함께 value값을 Stirng
으로 반환한느 메소이지만 차이점은String
로 변환한다는 점이다. 예를 들어,
value
에 null이 들어오면 toString 은 NRE(NullPointException)이 발생하지만,
Stirng.valueOf(value)
은 문자 그대로 "null"을 반환한다.
mapXXX()