搜索
写经验 领红包

9过滤集合中重复的数据有哪些(9过滤集合中重复的数据怎么处理)

导语:9.过滤集合中重复的数据

9.过滤集合中重复的数据有哪些(9.过滤集合中重复的数据怎么处理)

   private void printTransferCustomerRepeatDataLog(Long groupId, Long taskId, List<ShopCustomerVO> shopCustomerVOListAll) {        // 1.首先获取每个对象在集合中出现的个数        Map<String, Integer> countMap = shopCustomerVOListAll.stream()            .filter(t -> ObjectUtils.isNotEmpty(t.getNickInfoList())                && !t.getNickInfoList().get(0).getNick().equals(t.getNickInfoList().get(0).getPlatform()))            .collect(Collectors.toMap(vo -> String.format(CacheKeyConstant.CUSTOMER_TRANSFER_KEY,                vo.getNickInfoList().get(0).getNick(), vo.getNickInfoList().get(0).getPlatform()), value -> 1, (value1, value2) -> value1 + value2));         // 2.过滤出重复的数据        List<ShopCustomerVO> repeatShopCustomerVO = shopCustomerVOListAll.stream().filter(t -> ObjectUtils.isNotEmpty(t.getNickInfoList())            && countMap.get(String.format(CacheKeyConstant.CUSTOMER_TRANSFER_KEY, t.getNickInfoList().get(0).getNick(),            t.getNickInfoList().get(0).getPlatform())) > 1).collect(Collectors.toList());        JobLog.info(,            ServiceTypeEnum.CUSTOMER_TRANSFER_TASK_PRE_PROCESS.getName(), groupId,            taskId, JSON.toJSONString(repeatShopCustomerVO));    }

本文内容由小德整理编辑!