List<FeeTemplatesInfoResponse> list = response.getData().getList().stream().map(info -> {
MerchantInfoOnlineResponse merchantInfo = merchantService.getOnlineMerchantInfo(info.getMerchantId());
FeeTemplatesInfoResponse feeTemplatesInfoResponse = new FeeTemplatesInfoResponse();
BeanUtils.copyProperties(info, feeTemplatesInfoResponse);
return feeTemplatesInfoResponse;
}).collect(Collectors.toList()).stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o->o.getIntegrationType()+";"+o.getMerchantId()))), ArrayList::new));
最主要的下面的
stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o->o.getIntegrationType()+";"+o.getMerchantId()))), ArrayList::new));
其中getIntegrationType和getMerchantId就是去重条件 还有主要注意的是list的结果集要精简,把一些无关紧要的字段可以去掉 其实这个功能和我们sql里面的group by差不多