List排序的方法


// 方法1 自定義排序的規則 step1
@AllArgsConstructor
@Getter
public enum EastTradeTypeEnum {
    BBC(1, "BBC", "備貨"),
    BC(2, "BC", "直郵"),
    CC(3, "CC", "快件"),
    PICKUP(4, "代取件", "代取件"),
    EXPARCEL(5, "出口小包", "出口小包"),
    OTHER(100, "OTHER", "OTHER");

    private int index;
    private String code;
    private String message;
}


// 方法1 自定義排序的規則  step2,使用枚舉中的index排序
Collections.sort(orderList, (o1, o2) -> {
            EastTradeTypeEnum o1TradeType = Optional.ofNullable(EnumUtils.getInstance(o1.getTitle(), EastTradeTypeEnum.class)).orElse(EastTradeTypeEnum.OTHER);
            EastTradeTypeEnum o2TradeType = Optional.ofNullable(EnumUtils.getInstance(o2.getTitle(), EastTradeTypeEnum.class)).orElse(EastTradeTypeEnum.OTHER);
            return o1TradeType.getIndex() - o2TradeType.getIndex();
        });



// 方法2 根據訂單數量進行排序
Collections.sort(orderList, Comparator.comparing(Order::getCount));

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM