List<UserCollectCard> userCollectCards = userCollectCardMapper.selectByExample(userCollectCardExample);
UserCollectCard userCollectCard = userCollectCards.stream()
.sorted(
// 根据drawStatus排序,然后调转顺序;如果drawStatus相同,那么根据creatTime进行排序
Comparator.comparing(UserCollectCard::getDrawStatus).reversed().thenComparing(UserCollectCard::getCreateTime)
)
.findFirst()
.orElseThrow(
() -> new CmschinajikaKnownException(ErrorCodeEnum.COMPOSITION_CARD_CONSUMER_ERROR.getErrorCode(), ErrorCodeEnum.COMPOSITION_CARD_CONSUMER_ERROR.getErrorMsg())
);
03 java8对集合进行排序
最新推荐文章于 2024-04-26 10:18:14 发布
本文介绍如何通过Java Stream API对UserCollectCard对象列表进行排序,首先根据drawStatus降序排列,再依据createTime升序,确保获取最新状态的第一张卡片。遇到错误则抛出自定义异常。
摘要由CSDN通过智能技术生成