stream
map遍历
map.forEach((key, value) -> {
System.out.println(“key=” + key + “,value=” + value);
});
获取某个字段并组成新集合
List roleList = value.stream().map(item -> item.getRoleId()).collect(Collectors.toList());
根据字段分组
Map<String, List> collect = mayibankAddJobs.stream().collect(Collectors.groupingBy(MayibankAddJobs::getJobCode));
集合过滤
List collect = copTaskConfigModels.stream().filter(item -> StringUtils.isNotBlank(tp) && item.getBusType().equals(tp))
指定字段组装字符串
String collect = operatorDTOS.stream().map(OperatorDTO::getOperatorName).collect(Collectors.joining(","));
过滤两个集合不重复的数据
List collect = pageInfos.stream().filter(item -> pageInfoDOS.stream().noneMatch(dos -> dos.getPageId().equals(item.getPageId()))).collect(Collectors.toList());
返回 ConcurrentMap
ConcurrentMap<String, CopTaskModel> copTaskModelMap = taskModelList.stream().filter(tk->tk.getRetryTimes()==null||tk.getRetryTimes()==0).collect(Collectors.toConcurrentMap(CopTaskModel::getTaskCode, t -> t));
集合转set
Set jobIdsSet = jobIds.stream().collect(Collectors.toSet());
忘了场景了
List adminIds = roleDtos.stream().filter(Objects::nonNull).flatMap(item->
StringUtils.isNotBlank(item.getRoleAdmins()) ? Arrays.asList(item.getRoleAdmins()).stream() : null).collect(Collectors.toList());
根据条件 过滤出新的几个
orgListAll = orgListAll.stream().filter(item->item.getId() > 0).collect(Collectors.toList());
把某个字段组装成新的集合
List authIdList = existsNormalAuth.stream().map(AuthSessionModel::getAuthId).collect(Collectors.toList());
去重
List distinctOperationModels = operationModels.stream().distinct().collect(Collectors.toList());
对象转换 : BeanConverters.convert2DTO(item) :为一个转换器
List operatorDTOS = userModels.stream().map(item->BeanConverters.convert2DTO(item)).collect(Collectors.toList());
将集合分组 根据某个字段分组 返回Map, key为分组条件
Map<Long,List> roleModelMap = processRoleModel.stream().collect(Collectors.groupingBy(RoleModel::getUpderOrgId));
List storeIds = sellerItemDTO.getStoreIds();
List materialids = info.stream().map(x -> x.getMaterialId()).collect(Collectors.toList());