如何使用Java中的压缩器按2个值排序?

问题描述 投票:0回答:2

我有一个类别为Customer的字段:

    public class Customer {

        private Date date;
        private int weight;
        ...
    }

[之后,我创建了一个Customer列表,我想首先按日期对它们进行排序,如果日期与权重相等,并且日期不仅仅与日期相等,则按日期排序。任何反馈将不胜感激!谢谢!

java spring sorting comparator
2个回答
1
投票

您可以像这样在Comparator上创建链。

Comparator<Customer> sort = Comparator.comparing(Customer::getDate)
  .thenComparing(Customer::getWeight);

可以用类似的方式进一步添加更多内容。


1
投票

您可以使用此比较器

Comparator.comparing((Customer c) -> c.date).thenComparing((Customer c) -> c.weight)
© www.soinside.com 2019 - 2024. All rights reserved.