1.集合多字段排序
比如 奥运会时期,每场赛事后,对国家的金、银、铜牌进行排序,排序规则如下:
先以金牌排序,金牌数越多,排得越前,如果金牌数相同,则比银牌数,如果银牌数一样多,则比铜牌数,如果铜牌数还一样多,则按国家英文字母顺序升序排序。
list.sort(Comparator.comparing(QryCouponResp::getCouponId).reversed()
.thenComparing(Comparator.comparing(QryCouponResp::getQuantity).reversed())
.thenComparing(QryCouponResp::getCustOrderId));
上面代码 相当于 sql: order by CouponId desc,d.Quantity desc,CustOrderId asc