
Java 8
Java8
Martiny66
这个作者很懒,什么都没留下…
展开
-
Lambda表达式
目录1.什么是Lambda表达式?2. 如何辨别Lambda表达式3.引用值而不是变量5.函数接口6.总结面对大型数据集合,Java还欠缺高效的并行操作,因此Java 8增加了Lambda表达式。Lambda表达式能够使开发者简单高效地开发出在多核CPU上高效运行的代码。Lambda表达式是函数式编程,我们知道面向对象编程是对数据进行抽象,而函数式编程是对行为进行抽象。那什...原创 2019-03-16 22:15:17 · 229 阅读 · 0 评论 -
流(Stream)
目录1.从外部迭代到内部迭代2.内部迭代的实现机制3.常用的流操作3.1 Collect(toList())3.2 map3.3 filter3.4 flatMap3.5 max和min3.6 reduce4.高阶函数5.总结Java 8中新增的特性旨在帮助程序员写出更好的代码,其中对核心类库的改进是很关键的一部分。对核心类库的改进主要包括集合类的A...原创 2019-03-16 22:38:32 · 295 阅读 · 0 评论 -
类库
目录1.基本类型2.默认方法2.1 接口的继承2.2 多重继承3.内置函数式接口3.1 Optional3.2 Supplier3.3 Consumer例子3.4Predicate操作3.5 Function例子4.总结前面讨论了如何编写 Lambda 表达式, 接下来将详细阐述另一个重要方面: 如何使用Lambda 表达式。 即使不需要编写像 S...原创 2019-03-23 22:02:29 · 1017 阅读 · 0 评论 -
高级集合类和收集器
目录1.方法引用2.收集器2.1 转换成其他集合2.2 转换成值2.3 数据分块2.4 数据分组2.5 字符串2.6 组合收集器3.Map4.总结本章会介绍集合类的一些更高级的主题,比如流中元素的顺序,以及一些有用的API。1.方法引用Lambda表达式有一个常见的用法是经常调用参数,比如我们想得到学生的名字,Lambda的表达式如下:st...原创 2019-04-21 22:21:06 · 257 阅读 · 0 评论 -
数据并行化
目录1.并行和并发2.并行化流操作3.模拟掷骰子4.性能5.总结1.并行和并发并发是两个任务共享时间段,并行则是两个任务在同一时间发生,比如运行在多核CPU上。如果一个程序要运行两个任务,并且只有一个CPU给他们分配了不同的时间片,那么这就是并发而不是并行。并发和并行的区别如下:数据并行化是指将数据分成块,为每块数据分配单独的处理单元。当需要在大量数据上执行同样...原创 2019-04-28 20:29:23 · 2737 阅读 · 0 评论 -
Lambda表达式重构和调试
目录1.重构候选项1.1 封装局部状态1.2 孤独的覆盖1.3 同样的东西写两遍2.调试重构、测试驱动开发(TDD)和持续集成(CI)越来越流行,本章主要讨论如何在代码中使用Lambda表达式技术,也会说明什么情况下不应该使用Lambda表达式。本章还讲述了如何调试大量使用Lambda表达式和流的程序。1.重构候选项1.1 封装局部状态如果你发现自己的代码不断地...原创 2019-04-29 11:49:17 · 1421 阅读 · 0 评论