프로그래머스 [가장 큰 수]
문제보기

소스코드
import java.util.Arrays;
import java.util.Comparator;
class Solution {
public static String solution(int[] numbers) {
String[] numbersStrArr = new String[numbers.length];
for (int i = 0; i < numbers.length; i++) {
numbersStrArr[i] = numbers[i] + "";
}
Arrays.sort(numbersStrArr, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
long a = Long.parseLong(o2 + o1);
long b = Long.parseLong(o1 + o2);
return Long.compare(a, b);
}
});
boolean isZero = true;
StringBuffer sb = new StringBuffer();
for (int i = 0; i < numbersStrArr.length; i++) {
sb.append(numbersStrArr[i]);
if (!"0".equals(numbersStrArr[i])) isZero = false;
}
if (isZero) return "0";
return sb.toString();
}
}