我需要所有基金价值最高的基金代码
如果那是您要排序的唯一原因,我建议根本不要排序。排序主要带来 O(n log(n)) 的复杂性。查找最大值仅具有 O(n)
的复杂度,并且可以通过列表的简单迭代来实现:
List<Fund> maxFunds = new ArrayList<Fund>();int max = 0;for (Fund fund : funds) { if (fund.getFundValue() > max) { maxFunds.clear(); max = fund.getFundValue(); } if (fund.getFundValue() == max) { maxFunds.add(fund); }}您可以通过使用Guava等第三级库来避免该代码。请参阅:如何从Guava中的List获取max()元素



