慕勒3428872
您可以用这种方法来覆盖用户定义的类的降序方法,从而覆盖compare()方法,Collections.sort(unsortedList,new Comparator<Person>() { @Override public int compare(Person a, Person b) { return b.getName().compareTo(a.getName()); }});或通过使用Collection.reverse()用户Prince在其评论中提到的降序进行排序。您可以像这样进行升序排序,Collections.sort(unsortedList,new Comparator<Person>() { @Override public int compare(Person a, Person b) { return a.getName().compareTo(b.getName()); }});我们用简洁的Lambda表达式(从Java 8开始)替换上面的代码:Collections.sort(personList, (Person a, Person b) -> b.getName().compareTo(a.getName()));从Java 8开始,List具有sort()方法,该方法将Comparator作为参数(更简洁):personList.sort((a,b)->b.getName().compareTo(a.getName()));在这里a,b由lambda表达式推断为Person类型。