很简单,只要让他们组合之后,小的在前面。
需要重写一个比较器,比较器的内容是(O1+O2).compareTo(O2+O1)
注意必须是字符串的比较
import java.util.*;
public class Solution {
public String PrintMinNumber(int [] numbers) {
String[] str = new String[numbers.length];
for(int i=0;i<numbers.length;i++){
str[i] = String.valueOf(numbers[i]);
}
Arrays.sort(str,new Comparator<String>(){
public int compare(String o1,String o2){
return (o1+o2).compareTo(o2+o1);
}
});
String s = "";
for(String ss: str){
s += ss;
}
return s;
}
}