编辑推荐

Java攻略 Java常见问题的简单解法》以范例形式编写,涵盖Java8和Java9的新特性,并给出了70余个可以用于实际开发的示例,旨在让读者掌握如何利用这些新特性来解决开发中遇到的各种问题。

内容简介

Java攻略 Java常见问题的简单解法》旨在让读者迅速掌握Java8和Java9相关特性,并给出了70余个可以用于实际开发的示例,介绍了如何利用这些新特性解决这些问题,从而以更自然的方式让开发人员掌握Java。
Java攻略 Java常见问题的简单解法》适合Java开发人员阅读。

作者简介

[美]肯·寇森(KenKousen)
独立咨询师与培训讲师,KousenIT公司总裁;对Spring、Hibernate、Groovy、Grails等语言和框架颇有研究;荣膺2013年和2016年JavaOneRockStar大奖;毕业于MIT并取得了普林斯顿大学博士学位。

目录

译者序  ix
序 xi
前言 xiii
第 1章基础知识 1
1.1 lambda表达式 2
1.2 方法引用 5
1.3 构造函数引用 8
1.4 函数式接口 12
1.5 接口中的默认方法 14
1.6 接口中的静态方法 17
第 2章java.util.function包 20
2.1 Consumer接口 20
2.2 Supplier接口 22
2.3 Predicate接口 25
2.4 Function接口 28
第3章 流式操作 31
3.1 流的创建 31
3.2 装箱流 35
3.3 利用reduce方法实现归约操作 36
3.4 利用reduce方法校验排序 44
3.5 利用peek方法对流进行调试 45
3.6 字符串与流之间的转换 47
3.7 获取元素数量 50
3.8 汇总统计 52
3.9 查找流的第一个元素 54
3.10 使用anyMatch、allMatch与noneMatch方法 58
3.11 使用flatMap与map方法 60
3.12 流的拼接 63
3.13 惰性流 66
第4章 比较器与收集器 69
4.1 利用比较器实现排序 69
4.2 将流转换为集合 72
4.3 将线性集合添加到映射 75
4.4 对映射排序 77
4.5 分区与分组 79
4.6 下游收集器 81
4.7 查找zui大值和zui小值 83
4.8 创建不可变集合 85
4.9 实现Collector接口 87
第5章 流式操作、lambda表达式与方法引用的相关问题 91
5.1 java.util.Objects类 91
5.2 lambda表达式与效果等同于final的变量 93
5.3 随机数流 96
5.4 Map接口的默认方法 97
5.5 默认方法冲突 101
5.6 集合与映射的迭代 103
5.7 利用Supplier创建日志消息 105
5.8 闭包复合 107
5.9 利用提取的方法实现异常处理 110
5.10 受检异常与lambda表达式 112
5.11 泛型异常包装器的应用 114
第6章 Optional类 117
6.1 Optional的创建 118
6.2 从Optional中检索值 120
6.3 getter和setter方法中的Optional 122
6.4 Optional.flatMap与Optional.map方法 124
6.5 Optional的映射 127
第7章 文件I/O 131
7.1 文件处理 132
7.2 以流的形式检索文件 134
7.3 文件系统的遍历 135
7.4 文件系统的搜索 137
第8章 java.time包 139
8.1 Date-TimeAPI中的基本类 140
8.2 根据现有实例创建日期和时间 143
8.3 调节器与查询 147
8.4 将java.util.Date转换为java.time.LocalDate 152
8.5 解析与格式化 155
8.6 查找具有非整数小时偏移量的时区 158
8.7 根据UTC偏移量查找地区名 160
8.8 获取事件之间的时间 162
第9章 并行与并发 165
9.1 将顺序流转换为并行流 166
9.2 并行流的优点 169
9.3 调整线程池大小 173
9.4 Future接口 175
9.5 完成CompletableFuture 178
9.6 多个CompletableFuture之间的协调(第1部分) 181
9.7 多个CompletableFuture之间的协调(第2部分) 186
第 10章Java9新特性 193
10.1 Jigsaw中的模块 194
10.2 接口中的私有方法 198
10.3 创建不可变集合 200
10.4 新增的Stream方法 204
10.5 下游收集器:filtering与flatMapping 207
10.6 新增的Optional方法 210
10.7 日期范围 212
附录A 泛型与Java8 215
作者简介 230
封面介绍 230

其他推荐