如何按属性对对象的数组列表进行排序?

如何按属性对对象的数组列表进行排序?,第1张

如何按属性对对象数组列表进行排序

你可以使用Collections.sort自定义Comparator

    class HockeyPlayer {        public final int goalsScored;        // ...    };    List<HockeyPlayer> players = // ...    Collections.sort(players, new Comparator<HockeyPlayer>() {        @Override public int compare(HockeyPlayer p1, HockeyPlayer p2) { return p1.goalsScored - p2.goalsScored; // Ascending        }    });

比较部分也可以这样写:

players.sort(Comparator.comparingInt(HockeyPLayer::goalsScored));

或者,你可以制作

HockeyPlayer implementsComparable<HockeyPlayer>
。这定义了所有
HockeyPlayer
对象的自然顺序。使用a
Comparator
更灵活,因为不同的实现可以按名称,年龄等进行排序。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5036770.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存