摘要:
1 重点: 1.1 规约汇总区别 2 规约(reduce)与汇总(collect) 对比 规约:将Stream流中的元素转化为一个值 汇总:将Stream流中的元素转化为一个容器 3 规约(reduce)原理 max(),min(),sum() reduce接口参数: 阅读全文
摘要:
1 重点: 1.1 2.3,2.5,2.6,2.7 2 本章总结: 2.1 传统集合处理方式和lambda表达式对比 2.2 介绍了流的简介 2.3 流与集合的区别 2.4 流的组成:数据源,中间操作和终端操作 2.5 中间操作分为无状态和有状态,终端操作分为短路和非短路;以及他们的案例 2.6 流 阅读全文
摘要:
1 重点: 1.1 Collectors方法之 流转集合,分组,分区的案例应用 2 demo之流转集合(toCollectors): demo: /** * toList * 案例1:流转换为集合 * 注意:可以用Collectors.toList /toSet/ toMap 等转换成不同的集合 * 阅读全文
摘要:
1 重点: 1.1 collect /Collect /Collectors的区别 2 收集器概述: 2.1 收集器的作用:将流中的元素累积成一个结果 2.2 作用于终端操作collect上 2.3 collect/Collector/Collectors 的区别 collect是流收集的一个方法, 阅读全文
摘要:
1 重点 1.1 流的构建的四种方式 2 Demo之由数值构建流 demo: @Test /** * 1 由数值直接构建流 * 问题:为什么可以用System.out::println ? */ public void streamFromValue(){ Stream stream = Strea 阅读全文
摘要:
1 重点 1.1 常用终端操作总结: 1.2 流构建描述 2 常用终端操作总结: 短路型: 匹配:anymatch allMatch noneMatch 查找:findFirst findAny 非短路型:Max Min Count 3 流构建描述: 3.1 由值生成流 3.2 由数组创建流 3.3 阅读全文
摘要:
1 重点 1.1 max,min,count 方法 最大/最小/计数 2 Demo之Max demo: @Test public void maxTest(){ OptionalDouble optional = list.stream().mapToDouble(sku->sku.getTotal 阅读全文
摘要:
1 重点 1.1 findFirst,findAny方法使用 1.2 sequential(串行),parallel(并行)方法使用 1.3 iterate,reduce方法的使用 1.4 串行,并行的区别(详情见2) 1.5 findFirst,findAny方法的区别(详情见2) 1.6 red 阅读全文
摘要:
1 重点 1.1 3个demo的使用 1.2 anyMatch 中关于 大于n元打印的实际应用场景 2 Demo之anyMatch: demo: /** * anyMatch 有任一满足的,则停止继续操作,短路操作 * 需求:如果商品中有任一 大于 n 元的则,打印查出来该商品名称,否则,返回fal 阅读全文
摘要:
1 重点 对3-7到3-9的总结 2 案例中间操作总结: 无状态操作: a filter 过滤 过滤书籍类产品 b map将一个元素转化成另一个元素 c flatMap将一个对象转化成一个流,字符计数 d peek对流元素进行遍历操作 有状态操作: a sort 对流中元素进行排序,可指定排序规则 阅读全文