gpt4 book ai didi

java - 如何使用两个不同的值对 Java 列表进行排序?

转载 作者:行者123 更新时间:2023-12-02 07:52:23 27 4
gpt4 key购买 nike

public void sortLeagueTable(List<LeagueTableItem> table) {
Collections.sort(table, new Comparator<LeagueTableItem>(){
public int compare(LeagueTableItem o1, LeagueTableItem o2){
return o2.getPoints() - o1.getPoints();
}
});
}

此代码根据称为点的对象的值对两个列表进行排序。根据值 point 对它进行排序后,我想根据值 goalScored 再次对其进行排序。因此,如果两队得分相等,我想根据 goalScored 值再次排序。

我怎样才能做到这一点?

最佳答案

Java 8 对 Comparator 接口(interface)的增强为您提供了一种非常优雅的方式来实现此目的:

table.sort(Comparator.comparingInt(LeagueTableItem::getPoints)
.thenComparingInt(LeagueTableItem::goalScored));

关于java - 如何使用两个不同的值对 Java 列表进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47635651/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com