有人可以给出使用比较器在 Java 中对数组进行排序的示例和输出吗?
我知道我需要使用public static void sort(List list, Comparator c);
,但是比较器如何改变排序顺序呢?
最佳答案
通常您可以只实现Comparable
并将List传递给sort()
方法。但如果您需要使用Comparator
,这里有一个完整的示例:
public static void main(String args[]) {
List<ExampleItem> examples = new LinkedList<ExampleItem>();
//Build List
Collections.sort(examples, new ExampleCompartor());//Sort with your comparator
}
//Custom Class to sort
class ExampleItem{
private int data;
}
//Compartor
static class ExampleCompartor implements Comparator<ExampleItem>{
@Override
public int compare(ExampleItem ex1, ExampleItem ex2) {
return ex1.data - ex2.data;
}
}
关于java - Java 中的集合排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4869896/