Java8特性学习
针对Java8特性学习进行一个整体的笔记记录
趣味无穷2·123
这个作者很懒,什么都没留下…
展开
-
第七章 并行数据处理与性能
1、内部迭代让你可以并行处理一个流,而无需在代码中显式使用和协调不同的线程。 2、虽然并行处理一个流很容易,却不能保证程序在所有情况下都运行地更快。并行软件的行为和性能有时是违反直觉的,因此一定要测量,确保你并没有把程序拖得更慢。 3、像并行流那样对一个数据集并行执行操作可以提升性能,特别是要处理的元素数量庞大,或处理单个元素特别耗时的时候。 4、从性能角度来看,使用正确的数据结构,如尽可能利用原始流而不是一般化的流,几乎总是比尝试并行化某些操作更为重要。 5、分支/合并框架(ForkJoinPool、Re原创 2021-05-02 10:48:45 · 145 阅读 · 0 评论 -
第六章 用流收集数据
1、Collect是一个终端操作,它接受的参数是将流中元素累计到汇总结果的各种方式(称为收集器,对应参数的函数式接口是Collector<T, A, R>) 2、Collector<T, A, R>:其中T、A、R分别是流中元素的类型、用于累积部分结果的对象类型,collect操作最终结果的类型。 3、预定义收集器java.util.steam.Collectors:包含将流元素归约和汇总到一个值,例如计算最小值、最大值或平均值。总结如下: a)、Collector<T, ?,原创 2021-05-02 10:48:20 · 65 阅读 · 0 评论 -
第五章 使用流
1、Streams API可以表达复杂的数据处理查询。常用的流操作总结如下: 2、流的筛选(filter、distinct等)、切片(skip、limit等)、提取(map)、转换(flatMap)、查找(findFirst、findAny)、匹配(allMatch、noneMatch、anyMatch) 3、有状态操作(reduce),需要存储所有元素状态才能计算并返回一个新的流。 4、流有三种基本的原始类型特化:IntStream、DoubleStream、LongStream。它么的操作也有相应的特原创 2021-05-02 10:46:42 · 63 阅读 · 0 评论 -
第四章 引入流
1、流的概念:从支持数据处理操作的源生成的一系列元素 2、流利用内部迭代:迭代通过中间操作被抽象掉了 3、流操作有两类:中间操作和终端操作 4、中间操作:会返回一个流,并可以链接在一起,而且不会生成任何结果。 5、终端操作:会执行中间操作链接好的流水线来返回一个非流的值。 6、流中的元素是按需计算的。 ...原创 2021-04-21 17:45:23 · 94 阅读 · 0 评论 -
第三章 Lambda表达式
1、Lambda表达式可以理解为一个匿名函数:它没有名称,但有参数列表、函数主体、返回类型,可能还有一个可以抛出的异常的列表 2、Lambda表达式让你可以简洁地传递代码。 3、函数式接口:仅仅声明了一个抽象方法的接口。当使用@FunctionalInterface注解时,则必须只能包含一个抽象方法,否则编译错误。 4、只有在接受函数式接口的地方才可以使用Lambda表达式。 5、Lambda表达式允许直接内联函数,为函数式接口的抽象方法提供实现,并且将整个表达式作为函数式接口的一个实例。 6、Java8自原创 2021-04-21 17:44:48 · 109 阅读 · 0 评论 -
第二章 通过行为参数化传递代码
1、行为参数化,就是一个方法接受多个不同的行为作为参数,并在内部使用它们,完成不同行为的能力。 2、行为参数化可让代码更好的适应不断变化的要求,减轻未来的工作量。类似代码设计模式中的“策略模式”、“模板方法”,使代码更灵活、更简洁。 3、传递代码,就是将新行为作为参数传递给方法。但在Java8之前这实现起来很繁琐(为接口声明许多很少用到的实现类)或不清晰(匿名类表述不清晰,太冗余)。 4、Java API包含很多可以用不同行为进行参数化的方法,包括排序、线程和GUI处理。 ...原创 2021-04-21 17:40:53 · 79 阅读 · 0 评论 -
第一章 为什么要关心Java8
1、请记住语言生态系统的思想,以及语言面临的“要么改变,要么衰亡”的压力。虽然Java可能现在非常有活力,但你可以回忆一下其他曾经也有活力但未能及时改进的语言的命运,如COBOL。 2、Java8中新增的核心内容提供了令人激动的新概念和功能,方便我们编写既有效有简洁的程序。 3、现有的Java编程实践并不能很好地利用多核处理器。 4、函数为一等值(首先编程语言的整个目的就在于操作值,那么这些值就是一等值;而编程语言中的类和方法等只是用来表示值的结构,所以这些就属于二等值);记得方法如何作为函数式值来传原创 2021-04-21 17:33:20 · 64 阅读 · 0 评论