//对象集合中取车某个元素
List<String> li=lists.stream().map(e -> e.getDate().toString()).collect(Collectors.toList());
//字符串数组数据转96点List<Decimal> 集合
List<String> li=JSON.parseArray(gridRealtimeDatas.get(i).getSysActualLoad(), BigDecimal.class)
//对象集合按某一字段分组
Map<LocalDate, List<AheadNonMarketGensetLoad>> map=
lists.stream().collect(Collectors.groupingBy(AheadNonMarketGensetLoad::getDate));
//对象集合中统一设置某个字段
lists.forEach(model -> model.setCompanyName("测试"));
//对象集合按条件检索筛选 返回对象集合
lists=lists.stream().filter(model -> type.equals(model.getDicCode())).collect(Collectors.toList())
//条件判断 返回boolean
boolean a=lists.stream().anyMatch(model -> model.getBackupLoad() == null)
//对象集合转化为map集合
LinkedHashMap<String, String> gensetMap = genSets.stream().collect(Collectors.toMap(GenSet::getId, GenSet::getName, (n1, n2) -> n1, LinkedHashMap::new));
//设置实体 需在实体类中添加@SuperBuilder
ApplyForecastAlgoParam param = ApplyForecastAlgoParam.builder()
.forecastDate(forecastDate)
.occasionType(occasionType)
.forecastType(ForecastType.WHOLE_PRICE).build();
//分组数据归类
LinkedHashMap<String, List<MustBootStopEo>> dispatchNameGroupDataMap
= mustBootStopEos
.stream()
.collect(Collectors.groupingBy(MustBootStopEo::getUnitName, LinkedHashMap::new, Collectors.toList()));
//分组计数
Map<String, Long> dmemEOGroupDataMap = memEOStrLi.stream().collect(Collectors.groupingBy(SaleRetailMemberEO::getArea, Collectors.counting()));
//集合中元素累加求和
BigDecimal sum = values.stream().map(MathOperateUtil::objectToDecimal).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
//集合筛选null值计算个数
long count = values.stream().map(MathOperateUtil::objectToDecimal).filter(Objects::nonNull).count();
//同一设置集合中某一个元素
List<ContractDataBidding> biddingDataList = contract.getBiddingDataList().stream()
.peek(item ->
item.setContractId(contract.getId())
).collect(Collectors.toList());
//排序
List<AlgoNodePriceForecast> priceForecasts = nodePriceForecasts.stream().sorted(Comparator.comparing(AlgoNodePriceForecast::getForecastDate).thenComparing(AlgoNodePriceForecast::getForecastOccasion).reversed()).collect(Collectors.toList());
paramList=paramList.stream().sorted(Comparator.comparing(SpotInterprovincialParam::getDate).reversed()).collect(Collectors.toList());
//对象集合转Map
Map<String, RealtimeDataBo> dataBoMap =
unitRealtimeDataList.stream().collect(Collectors.toMap(DataRealtimeData::getTime,
DataRealtimeData::getData));
reportCompanyUnitList
.stream()
.collect(Collectors.toMap(ReportCompanyUnit::getId, ReportCompanyUnit::getName));
Collections.sort(buyPrices);
buyMinPrices.add(buyPrices.get(0));
Collections.reverse(buyPrices);
buyMaxPrices.add(buyPrices.get(0));
Map<String, List<LocalDate>> groupedMap = dateStrList.stream().collect(Collectors.groupingBy(m -> m.toString().substring(0,7)));
java8stream流示例
原创wx64dec93f64d16 ©著作权
文章标签 List sed 字段 文章分类 spring boot 后端开发
-
Java之Stream流
Stream是一种处理集合(Collection)数据的方式。Stream可以让我们以一种更简洁的方式对集合进行过滤、映射、排序等操作。
System 数据 数组 Stream Java基础