如何在java中对列表进行排序

时间:2014-08-25 07:21:43

标签: java sorting

我有列表名称为mainPartition的列表:[[23423],[23133],[32323],[23211]] 输入文件是:

现在我想对这个mainPartition进行排序,但它对我不起作用

我使用的代码是:

Collections.sort(mainPartition, new Comparator<List<String>> () {
    public int compareTo(List<String> a, List<String> b) {
        return a.get(1).compareTo(b.get(1));
    }
});

1 个答案:

答案 0 :(得分:3)

在实施Comparator时,您需要实现 compare(Object o1,Object o2)。请参阅javadoc

以下是更正后的实施:

 Collections.sort(mainPartition, new Comparator<List<String>> () {
        @Override
        public int compare(List<String> o1, List<String> o2) {
            return o1.get(1).compareTo(o2.get(1));
        }
  });

此外,如果您需要自然订购,则应直接使用

Collections.sort(collection),

如果该类实现了Comparable。