0

我有以下格式的字符串列表

["BlahBlahBlahBlah   0.9877"]
["ABCabcABCabcAbc   1.7852"]

如您所见,两者之间是一个空格。由于某些限制,我无法更改设计。

我需要做的是根据最后的双数对列表进行排序。谁能帮我实现这段代码?

4

2 回答 2

3

这不是一个单独的空间,但无论如何......

Collections.sort(yourList, new Comparator<String>() {
    public int compare(String s1, String s2) {
        double d1 = Double.valueOf(s1.substring(s1.lastIndexOf(' ') + 1));
        double d2 = Double.valueOf(s2.substring(s2.lastIndexOf(' ') + 1));
        return Double.compare(d1, d2);
    }
});

(如果还没有,请导入 java.util.Collections 和 java.util.Comparator。)

于 2013-10-18T21:27:29.793 回答
0

如果您知道数字始终是 X.XXXX 格式(五位和一个小数),您可以执行类似 '

String asString = yourString.substring(yourString.length-9,yourString.length-3);
Double asDouble = Double.parseDouble(number);
于 2013-10-18T21:26:57.217 回答