jdk1.8中使用

Set userDoneRecord =records.stream()

.filter(r -> r.getUserCode().equals(s.getUserCode())).map(StuJobRecord::getJobId).collect(

Collectors.toSet());



maps.forEach((k, v) -> {

//k 天 ,v作业

//等级分组

  Map> standGroup = v.stream()

.collect(Collectors.groupingBy(Job::getStandard));

//用户学完成的作业

  Set userNeedJobs = Optional.ofNullable(standGroup.get(s.getStandard()))

.orElseGet(ArrayList::new).stream().map(Job::getId).collect(Collectors.toSet());

if (userDoneRecord.containsAll(userNeedJobs)) {

jobByday.add(k);

}

});


List res = stuClassSchools.stream().map(s -> {

double totalSpend =records.stream().filter(

r -> r.getUserCode().equals(s.getUserCode()))

.map(consu)

.filter(r -> r !=null)

.reduce(0, (a, b) -> a + b).doubleValue();




int sumTime = questionList.stream().filter(x -> x.getExpectTimes() !=0 && x.getStandard().indexOf(a) != -1)

.mapToInt(QuestionJson::getExpectTimes).sum();


Map> maps = mapQue.stream().collect(Collectors.groupingBy(QuestionJson::getRefWord));

推荐阅读更多精彩内容

  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 2,849评论 0 8
  • 原文地址: 深蓝至尊 一. 流式处理简介 在我接触到java8流式处理的时候,我的第一感觉是流式处理让集合操作变得...
    咻咻咻i阅读 329评论 0 0
  • Streams 的背景,以及 Java 8 中的使用详解 为什么需要 Stream Stream 作为 Java ...
    Java黎先生阅读 338评论 0 8
  • pdf下载地址:Java面试宝典 第一章内容介绍 20 第二章JavaSE基础 21 一、Java面向对象 21 ...
    王震阳阅读 73,958评论 25 505
  • 作为研发人员,一些优秀的开发工具可以提升很多工作效率,节省许多时间。今天给大家推荐几款我个人认为比较不错的几款常用...
    代码_搬运工阅读 381评论 0 6