Collections.sort(stringList, new Comparator < String[] > () {
    public int compare(String[] strings, String[] otherStrings) {
        return  (strings[1].compareTo(otherStrings[1]));


我写了这段代码。但是答案是..

1个
11
12
19
2
3
4
5
6
7

谁能告诉我如何解决这个问题

最佳答案

这没错。这是字符串的默认顺序-字典顺序。
如果要按数字表示形式对字符串进行排序,请先将其转换为整数。

例如 :

Collections.sort(stringList, new Comparator<String[]> () {
    public int compare(String[] strings, String[] otherStrings) {
        return Integer.valueOf(strings[1]).compareTo(Integer.valueOf(otherStrings[1]));
    }
});

07-26 09:32