图灵程序设计丛书:Java进阶高手
首页
白天
夜间
下载
阅读记录
书签管理
我的书签
添加书签
移除书签
第 2 章 变量和运算符
来源 网络
浏览
1
扫码
打印
2026-05-15 10:53:53
第 2 章 变量和运算符
第 2 章 变量和运算符
本章将介绍如何用变量和运算符来编写语句。变量用于存储数字、单词等值,而运算符是执行计算的符号。另外,本章还将介绍三种编程错误,并提供其他的调试建议。
上一篇:
下一篇:
发布点评
总目录
版权信息
目录
版权声明
对本书上一版的赞誉
前言
致谢
关于本书
本书结构
关于封面图片
第一部分 基础知识
第 1 章 Java 8、9、10以及11的变化
1.1 为什么要关心Java的变化
1.2 Java怎么还在变
1.3 Java中的函数
1.4 流
1.5 默认方法及Java模块
1.6 来自函数式编程的其他好思想
1.7 小结
第 2 章 通过行为参数化传递代码
2.1 应对不断变化的需求
2.2 行为参数化
2.3 对付啰唆
2.4 真实的例子
2.5 小结
第 3 章 Lambda表达式
3.1 Lambda管中窥豹
3.2 在哪里以及如何使用Lambda
3.3 把Lambda付诸实践:环绕执行模式
3.4 使用函数式接口
3.5 类型检查、类型推断以及限制
3.6 方法引用
3.7 Lambda和方法引用实战
3.8 复合Lambda表达式的有用方法
3.9 数学中的类似思想
3.10 小结
第二部分 使用流进行函数式数据处理
第 4 章 引入流
4.1 流是什么
4.2 流简介
4.3 流与集合
4.4 流操作
4.5 路线图
4.6 小结
第 5 章 使用流
5.1 筛选
5.2 流的切片
5.3 映射
5.4 查找和匹配
5.5 归约
5.6 付诸实践
5.7 数值流
5.8 构建流
5.9 概述
5.10 小结
第 6 章 用流收集数据
6.1 收集器简介
6.2 归约和汇总
6.3 分组
6.4 分区
6.5 收集器接口
6.6 开发你自己的收集器以获得更好的性能
6.7 小结
第 7 章 并行数据处理与性能
7.1 并行流
7.2 分支/合并框架
7.3 Spliterator
7.4 小结
第三部分 使用流和Lambda进行高效编程
第 8 章 Collection API的增强功能
8.1 集合工厂
8.2 使用List和Set
8.3 使用Map
8.4 改进的ConcurrentHashMap
8.5 小结
第 9 章 重构、测试和调试
9.1 为改善可读性和灵活性重构代码
9.2 使用Lambda重构面向对象的设计模式
9.3 测试Lambda表达式
9.4 调试
9.5 小结
第 10 章 基于Lambda的领域特定语言
10.1 领域特定语言
10.2 现代Java API中的小型DSL
10.3 使用Java创建DSL的模式与技巧
10.4 Java 8 DSL的实际应用
10.5 小结
第四部分 无所不在的Java
第 11 章 用Optional取代null
11.1 如何为缺失的值建模
11.2 Optional类入门
11.3 应用Optional的几种模式
11.4 使用Optional的实战示例
11.5 小结
第 12 章 新的日期和时间API
12.1 LocalDate、LocalTime、LocalDateTime、Instant、Duration以及Period
12.2 操纵、解析和格式化日期
12.3 处理不同的时区和历法
12.4 小结
第 13 章 默认方法
13.1 不断演进的API
13.2 概述默认方法
13.3 默认方法的使用模式
13.4 解决冲突的规则
13.5 小结
第 14 章 Java模块系统
14.1 模块化的驱动力:软件的推理
14.2 为什么要设计Java模块系统
14.3 Java模块:全局视图
14.4 使用Java模块系统开发应用
14.5 使用多个模块
14.6 编译及打包
14.7 自动模块
14.8 模块声明及子句
14.9 通过一个更复杂的例子了解更多
14.10 小结
第五部分 提升Java的并发性
第 15 章 CompletableFuture及反应式编程背后的概念
15.1 为支持并发而不断演进的Java
15.2 同步及异步API
15.3 “线框–管道”模型
15.4 为并发而生的CompletableFuture和结合器
15.5 “发布–订阅”以及反应式编程
15.6 反应式系统和反应式编程
15.7 路线图
15.8 小结
第 16 章 CompletableFuture:组合式异步编程
16.1 Future接口
16.2 实现异步API
16.3 让你的代码免受阻塞之苦
16.4 对多个异步任务进行流水线操作
16.5 响应CompletableFuture的completion事件
16.6 路线图
16.7 小结
第 17 章 反应式编程
17.1 反应式宣言
17.2 反应式流以及Flow API
17.3 使用反应式库RxJava
17.4 小结
第六部分 函数式编程以及Java未来的演进
第 18 章 函数式的思考
18.1 实现和维护系统
18.2 什么是函数式编程
18.3 递归和迭代
18.4 小结
第 19 章 函数式编程的技巧
19.1 无处不在的函数
19.2 持久化数据结构
19.3 Stream的延迟计算
19.4 模式匹配
19.5 杂项
19.6 小结
第 20 章 面向对象和函数式编程的混合:Java和Scala的比较
20.1 Scala简介
20.2 函数
20.3 类和trait
20.4 小结
第 21 章 结论以及Java的未来
21.1 回顾Java 8的语言特性
21.2 Java 9的模块系统
21.3 Java 10的局部变量类型推断
21.4 Java的未来
21.5 让Java发展得更快
21.6 写在最后的话
附录 A 其他语言特性的更新
A.1 注解
A.2 通用目标类型推断
附录 B 其他类库的更新
B.1 集合
B.2 并发
B.3 Arrays
B.4 Number和Math
B.5 Files
B.6 Reflection
B.7 String
附录 C 如何以并发方式在同一个流上执行多种操作
C.1 复制流
C.2 性能的考量
附录 D Lambda表达式和JVM字节码
D.1 匿名类
D.2 生成字节码
D.3 用InvokeDynamic力挽狂澜
D.4 代码生成策略
版权信息
目录
版权声明
前言
涵盖的内容
需要什么
为谁而写
排版约定
致谢
第 1 章 Java虚拟机
1.1 JVM实现
1.2 为何要在JVM上开发
1.3 常见的用途
1.4 JVM概念
1.5 Java版本
1.6 其他JVM语言
1.7 小结
第 2 章 Java虚拟机开发
2.1 JDK
2.2 使用包组织类
2.3 Java类库
2.4 从命令行运行JVM应用程序
2.5 Eclipse IDE
2.6 小结
第 3 章 Java
3.1 Java 中的面向对象编程功能
3.2 编写Java代码
3.3 编程风格指南
3.4 小测验
3.5 小结
第 4 章 Java编程
4.1 配置Eclipse IDE
4.2 使用Java创建Web服务
4.3 小结
第 5 章 Scala
5.1 安装Scala
5.2 Scala的REPL shell
5.3 函数式编程和命令式编程
5.4 Scala语法和规则
5.5 Scala的OOP功能
5.6 Scala标准库
5.7 Scala的函数式编程功能
5.8 小测验
5.9 小结
第 6 章 Scala编程
6.1 Scala IDE for Eclipse插件
6.2 SBT
6.3 创建Akka项目
6.4 小结
第 7 章 Clojure
7.1 安装Clojure
7.2 Clojure的交互式shell(REPL)
7.3 Clojure语言
7.4 使用Java类
7.5 使用代理管理状态
7.6 风格指南
7.7 小测验
7.8 小结
第 8 章Clojure编程
8.1 Eclipse IDE插件Counterclockwise
8.2 构建工具Leiningen
8.3 创建可执行的Clojure程序
8.4 新建Counterclockwise项目
8.5 以测试驱动开发的方式探索monad
8.6 Web框架Luminus
8.7 小结
第 9 章 Kotlin
9.1 安装Kotlin
9.2 Kotlin的REPL交互式shell
9.3 Kotlin语言基础
9.4 Kotlin的OOP功能
9.5 Kotlin过程性编程
9.6 风格指南
9.7 小测验
9.8 小结
第 10 章 Kotlin编程
10.1 Eclipse IDE Kotlin插件
10.2 Apache Maven
10.3 创建JavaFX桌面GUI应用程序
10.4 小结
第 11 章 Groovy
11.1 安装Groovy
11.2 Groovy语言
11.3 Groovy开发包(GDK)
11.4 动态和静态编程
11.5 小测验
11.6 小结
第 12 章 Groovy编程
12.1 安装Groovy Eclipse插件
12.2 Apache Ivy和IvyDE
12.3 创建并配置项目
12.4 Java Database Connectivity(JDBC)
12.5 使用MarkupBuilder生成XML
12.6 微服务平台Vert.x
12.7 小结
附录 A 其他JVM语言
A.1 Oracle Nashorn
A.3 JRuby(Ruby)
A.4 Frege(Haskell)
A.5 Ceylon
A.6 小结
附录 B 小测验答案
版权信息
目录
版权声明
O'Reilly Media, Inc. 介绍
业界评论
推荐序
前言
读者对象
排版约定
使用代码示例
Safari® Books Online
联系我们
致谢
第 1 章 导论
1.1 概述
1.2 平台版本约定
1.3 全面的性能调优
1.4 小结
第 2 章 性能测试方法
2.1 原则1:测试真实应用
2.2 原则2:理解批处理流逝时间、吞吐量和响应时间
2.3 原则3:用统计方法应对性能的变化
2.4 原则4:尽早频繁测试
2.5 小结
第 3 章 Java 性能调优工具箱
3.1 操作系统的工具和分析
3.2 Java监控工具
3.3 性能分析工具
3.4 Java任务控制
3.5 小结
第 4 章 JIT 编译器
4.1 JIT编译器:概览
4.2 调优入门:选择编译器类型(Client、Server或二者同用)
4.3 Java和JIT编译器版本
4.4 编译器中级调优
4.5 高级编译器调优
4.6 逆优化
4.7 分层编译级别
4.8 小结
第 5 章 垃圾收集入门
5.1 垃圾收集概述
5.2 GC调优基础
5.3 垃圾回收工具
5.4 小结
第 6 章 垃圾收集算法
6.1 理解Throughput收集器
6.2 理解CMS收集器
6.3 理解G1垃圾收集器
6.4 高级调优
6.5 小结
第 7 章 堆内存最佳实践
7.1 堆分析
7.2 减少内存使用
7.3 对象生命周期管理
7.4 小结
第 8 章 原生内存最佳实践
8.1 内存占用
8.2 针对不同操作系统优化JVM
8.3 小结
第 9 章 线程与同步的性能
9.1 线程池与ThreadPoolExecutor
9.2 ForkJoinPool
9.3 线程同步
9.4 JVM线程调优
9.5 监控线程与锁
9.6 小结
第 10 章 Java EE 性能调优
10.1 Web容器的基本性能
10.2 线程池
10.3 EJB会话Bean
10.4 XML和JSON处理
10.5 对象序列化
10.6 Java EE网络API
10.7 小结
第 11 章 数据库性能的最佳实践
11.1 JDBC
11.2 JPA
11.3 小结
第 12 章 Java SE API 技巧
12.1 缓冲式I/O
12.2 类加载
12.3 随机数
12.4 Java原生接口
12.5 异常
12.6 字符串的性能
12.7 日志
12.8 Java集合类API
12.9 AggressiveOpts标志
12.10 Lambda表达式和匿名类
12.11 流和过滤器的性能
12.12 小结
附录 A 性能调优标志摘要
作者简介
关于封面
看完了
版权信息
目录
版权声明
译者序
致
前言
本书内容
阅读前提
本书读者
排版约定
读者反馈
第 1 章 第一步:并发设计原理
1.1 基本的并发概念
1.2 并发应用程序中可能出现的问题
1.3 设计并发算法的方法论
1.4 Java并发API
1.5 并发设计模式
1.6 设计并发算法的提示和技巧
1.7 小结
第 2 章 使用基本元素:Thread和Runnable
2.1 Java中的线程
2.2 第一个例子:矩阵乘法
2.3 第二个例子:文件搜索
2.4 小结
第 3 章 管理大量线程:执行器
3.1 执行器简介
3.2 第一个例子:k-最近邻算法
3.3 第二个例子:客户端/服务器环境下的并发处理
3.4 小结
第 4 章 充分利用执行器
4.1 执行器的高级特性
4.2 第一个例子:高级服务器应用程序
4.3 第二个例子:执行周期性任务
4.4 有关执行器的其他信息
4.5 小结
第 5 章 从任务获取数据:Callable接口与Future接口
5.1 Callable接口和Future接口简介
5.2 第一个例子:单词最佳匹配算法
5.3 第二个例子:为文档集创建倒排索引
5.4 小结
第 6 章 运行分为多阶段的任务:Phaser类
6.1 Phaser类简介
6.2 第一个例子:关键字抽取算法
6.3 第二个例子:遗传算法
6.4 小结
第 7 章 优化分治解决方案:Fork/Join框架
7.1 Fork/Join框架简介
7.2 第一个例子:k-means聚类算法
7.3 第二个例子:数据筛选算法
7.4 第三个例子:归并排序算法
7.5 Fork/Join框架的其他方法
7.6 小结
第 8 章 使用并行流处理大规模数据集:MapReduce模型
8.1 流的简介
8.2 第一个例子:数值综合分析应用程序
8.3 第二个例子:信息检索工具
8.4 小结
第 9 章 使用并行流处理大规模数据集:MapCollect模型
9.1 使用流收集数据
9.2 第一个例子:无索引条件下的数据搜索
9.3 第二个例子:推荐系统
9.4 第三个例子:社交网络中的共同联系人
9.5 小结
第 10 章 异步流处理:反应流
10.1 Java反应流简介
10.2 第一个例子:面向事件通知的集中式系统
10.3 第二个例子:新闻系统
10.4 小结
第 11 章 探究并发数据结构和同步工具
11.1 并发数据结构
11.2 同步机制
11.3 小结
第 12 章 测试与监视并发应用程序
12.1 监视并发对象
12.2 监视并发应用程序
12.3 测试并发应用程序
12.4 小结
第 13 章 JVM中的并发处理:Clojure、带有GPars库的Groovy以及Scala
13.1 Clojure的并发处理
13.2 Groovy及其GPars库的并发处理
13.3 软件事务性内存
13.4 Scala的并发处理
13.5 小结
看完了
版权信息
目录
版权所有
O'Reilly Media
业界评论
前言
为什么要阅读本书
本书读者对象
怎样阅读本书
本书排版规范
使用代码示例
Safari® Books Online
联系我们
致谢
第 1 章 简介
1.1 为什么需要再次修改Java
1.2 什么是函数式编程
1.3 示例
第 2 章 Lambda表达式
2.1 第一个Lambda表达式
2.2 如何辨别Lambda表达式
2.3 引用值,而不是变量
2.4 函数接口
2.5 类型推断
2.6 要点回顾
2.7 练习
第 3 章 流
3.1 从外部迭代到内部迭代
3.2 实现机制
3.3 常用的流操作
3.4 重构遗留代码
3.5 多次调用流操作
3.6 高阶函数
3.7 正确使用Lambda表达式
3.8 要点回顾
3.9 练习
3.10 进阶练习
第 4 章 类库
4.1 在代码中使用Lambda表达式
4.2 基本类型
4.3 重载解析
4.4 @FunctionalInterface
4.5 二进制接口的兼容性
4.6 默认方法
4.7 多重继承
4.8 权衡
4.9 接口的静态方法
4.10 Optional
4.11 要点回顾
4.12 练习
4.13 开放练习
第 5 章 高级集合类和收集器
5.1 方法引用
5.2 元素顺序
5.3 使用收集器
5.4 一些细节
5.5 要点回顾
5.6 练习
第 6 章 数据并行化
6.1 并行和并发
6.2 为什么并行化如此重要
6.3 并行化流操作
6.4 模拟系统
6.5 限制
6.6 性能
6.7 并行化数组操作
6.8 要点回顾
6.9 练习
第 7 章 测试、调试和重构
7.1 重构候选项
7.2 Lambda表达式的单元测试
7.3 在测试替身时使用Lambda表达式
7.4 惰性求值和调试
7.5 日志和打印消息
7.6 解决方案:peak
7.7 在流中间设置断点
7.8 要点回顾
第 8 章 设计和架构的原则
8.1 Lambda表达式改变了设计模式
8.2 使用Lambda表达式的领域专用语言
8.3 使用Lambda表达式的SOLID原则
8.4 进阶阅读
8.5 要点回顾
第 9 章 使用Lambda表达式编写并发程序
9.1 为什么要使用非阻塞式I/O
9.2 回调
9.3 消息传递架构
9.4 末日金字塔
9.5 Future
9.6 CompletableFuture
9.7 响应式编程
9.8 何时何地使用新技术
9.9 要点回顾
9.10 练习
第 10 章 下一步该怎么办
封面介绍
看完了
版权信息
目录
版权声明
O'Reilly Media, Inc. 介绍
业界评论
前言
编写理念
面向对象编程
附录
使用代码示例
排版约定
Safari® Books Online
联系我们
致谢
第 1 章 编程之道
1.1 何为编程
1.2 何为计算机科学
1.3 编程语言
1.4 Hello World程序
1.5 显示字符串
1.6 转义序列
1.7 设置代码格式
1.8 调试代码
1.9 术语表
1.10 练习
第 2 章 变量和运算符
2.1 声明变量
2.2 赋值
2.3 状态图
2.4 显示变量
2.5 算术运算符
2.6 浮点数
2.7 舍入误差
2.8 字符串运算符
2.9 组合
2.10 错误类型
2.11 术语表
2.12 练习
第 3 章 输入和输出
3.1 System类
3.2 Scanner类
3.3 程序结构
3.4 英寸到厘米的转换
3.5 字面量和常量
3.6 设置输出的格式
3.7 厘米到英寸的转换
3.8 求模运算符
3.9 整合
3.10 Scanner类的bug
3.11 术语表
3.12 练习
第 4 章 void 方法
4.1 Math类的方法
4.2 再谈组合
4.3 添加方法
4.4 执行流程
4.5 形参和实参
4.6 多个形参
4.7 栈图
4.8 阅读文档
4.9 编写文档
4.10 术语表
4.11 练习
第 5 章 条件和逻辑
5.1 关系运算符
5.2 逻辑运算符
5.3 条件语句
5.4 串接和嵌套
5.5 标志变量
5.6 return语句
5.7 验证输入
5.8 递归方法
5.9 递归栈图
5.10 二进制数
5.11 术语表
5.12 练习
第 6 章 值方法
6.1 返回值
6.2 编写方法
6.3 方法组合
6.4 重载
6.5 boolean方法
6.6 Javadoc标签
6.7 再谈递归
6.8 姑且相信
6.9 再举一个例子
6.10 术语表
6.11 练习
第 7 章 循环
7.1 while语句
7.2 生成表格
7.3 封装和泛化
7.4 再谈泛化
7.5 for语句
7.6 do-while循环
7.7 break和continue
7.8 术语表
7.9 练习
第 8 章 数组
8.1 创建数组
8.2 访问元素
8.3 显示数组
8.4 复制数组
8.5 数组的长度
8.6 数组遍历
8.7 随机数
8.8 遍历和计数
8.9 生成直方图
8.10 改进的for循环
8.11 术语表
8.12 练习
第 9 章 字符串
9.1 字符
9.2 字符串是不可修改的
9.3 字符串遍历
9.4 子串
9.5 方法indexOf
9.6 字符串比较
9.7 设置字符串的格式
9.8 包装类
9.9 命令行实参
9.10 术语表
9.11 练习
第 10 章 对象
10.1 Point对象
10.2 属性
10.3 将对象用作参数
10.4 将对象作为返回类型
10.5 可修改的对象
10.6 指定别名
10.7 关键字null
10.8 垃圾收集
10.9 类图
10.10 Java类库的源代码
10.11 术语表
10.12 练习
第 11 章 类
11.1 Time类
11.2 构造函数
11.3 再谈构造函数
11.4 获取方法和设置方法
11.5 显示对象
11.6 方法toString
11.7 方法equals
11.8 时间相加
11.9 纯方法和非纯方法
11.10 术语表
11.11 练习
第 12 章 对象数组
12.1 Card对象
12.2 方法toString
12.3 类变量
12.4 方法compareTo
12.5 Card对象是不可修改的
12.6 Card数组
12.7 顺序查找
12.8 二分法查找
12.9 跟踪代码
12.10 递归版本
12.11 术语表
12.12 练习
第 13 章 数组对象
13.1 Deck类
13.2 洗牌
13.3 选择排序
13.4 合并排序
13.5 方法subdeck
13.6 方法merge
13.7 添加递归
13.8 术语表
13.9 练习
第 14 章 包含其他对象的对象
14.1 Deck和手里的牌
14.2 CardCollection
14.3 继承
14.4 发牌
14.5 Player类
14.6 Eights类
14.7 类之间的关系
14.8 术语表
14.9 练习
附录 A 开发工具
A.1 安装DrJava
A.2 DrJava Interactions窗格
A.3 命令行界面
A.4 命令行测试
A.5 运行Checkstyle
A.6 使用调试器进行跟踪
A.7 用JUnit进行测试
A.8 术语表
附录 B Java 2D 图形
B.1 创建图形
B.2 Graphics类的方法
B.3 绘图示例
B.4 术语表
B.5 练习
附录 C 调试
C.1 编译时错误
C.2 运行时错误
C.3 逻辑错误
作者简介
封面简介
看完了
版权信息
目录
版权声明
O'Reilly Media, Inc. 介绍
业界评论
献给
序
前言
第6版的变化
本书内容
相关书籍
在线示例
排版约定
发表评论
Safari® Books Online
致谢
第一部分 Java 介绍
第 1 章 Java 环境介绍
1.1 Java语言、JVM和生态系统
1.2 Java和JVM简史
1.3 Java程序的生命周期
1.4 Java的安全性
1.5 Java和其他语言比较
1.6 回应对Java的一些批评
第 2 章 Java 基本句法
2.1 Java程序概览
2.2 词法结构
2.3 基本数据类型
2.4 表达式和运算符
2.5 语句
2.6 方法
2.7 介绍类和对象
2.8 数组
2.9 引用类型
2.10 包和Java命名空间
2.11 Java文件的结构
2.12 定义并运行Java程序
2.13 小结
第 3 章 Java 面向对象编程
3.1 类简介
3.2 字段和方法
3.3 创建和初始化对象
3.4 子类和继承
3.5 数据隐藏和封装
3.6 抽象类和方法
3.7 修饰符总结
第 4 章 Java 类型系统
4.1 接口
4.2 Java泛型
4.3 枚举和注解
4.4 嵌套类型
4.5 lambda表达式
4.6 小结
第 5 章 Java 的面向对象设计
5.1 Java的值
5.2 java.lang.Object类的重要方法
5.3 面向对象设计要略
5.4 异常和异常处理
5.5 Java编程的安全性
第 6 章 Java 实现内存管理和并发编程的方式
6.1 Java内存管理的基本概念
6.2 JVM优化垃圾回收的方式
6.3 HotSpot堆
6.4 终结机制
6.5 Java对并发编程的支持
6.6 使用线程
6.7 小结
第二部分 使用 Java 平台
第 7 章 编程和文档约定
7.1 命名和大小写约定
7.2 实用的命名方式
7.3 Java文档注释
7.4 可移植程序的约定
第 8 章 使用Java集合
8.1 介绍集合API
8.2 在Java集合框架中使用lambda表达式
8.3 小结
第 9 章 处理常见的数据格式
9.1 文本
9.2 数字和数学运算
9.3 在Java 8中处理日期和时间
9.4 小结
第 10 章 处理文件和 I/O
10.1 Java处理I/O的经典方式
10.2 Java处理I/O的现代方式
10.3 NIO中的通道和缓冲区
10.4 异步I/O
10.5 网络
第 11 章 类加载、反射和方法句柄
11.1 类文件、类对象和元数据
11.2 类加载的各个阶段
11.3 安全的编程和类加载
11.4 应用类加载知识
11.5 反射
11.6 动态代理
11.7 方法句柄
第 12 章 Nashorn
12.1 介绍Nashorn
12.2 在Nashorn中执行JavaScript代码
12.3 Nashorn和javax.script包
12.4 Nashorn的高级用法
12.5 小结
第 13 章 平台工具和配置
13.1 命令行工具
13.2 VisualVM
13.3 Java 8配置
13.4 小结
作者简介
封面介绍
看完了
版权信息
空标题文档
版权声明
O'Reilly Media, Inc. 介绍
业界评论
译者序
序
前言
目标读者
本书结构
排版约定
示例代码
O'Reilly Safari
联系我们
致谢
第 1 章 基础知识
1.1 lambda表达式
1.2 方法引用
1.3 构造函数引用
1.4 函数式接口
1.5 接口中的默认方法
1.6 接口中的静态方法
第 2 章 java.util.function 包
2.1 Consumer接口
2.2 Supplier接口
2.3 Predicate接口
2.4 Function接口
第 3 章 流式操作
3.1 流的创建
3.2 装箱流
3.3 利用reduce方法实现归约操作
3.4 利用reduce方法校验排序
3.5 利用peek方法对流进行调试
3.6 字符串与流之间的转换
3.7 获取元素数量
3.8 汇总统计
3.9 查找流的第一个元素
3.10 使用anyMatch、allMatch与noneMatch方法
3.11 使用flatMap与map方法
3.12 流的拼接
3.13 惰性流
第 4 章 比较器与收集器
4.1 利用比较器实现排序
4.2 将流转换为集合
4.3 将线性集合添加到映射
4.4 对映射排序
4.5 分区与分组
4.6 下游收集器
4.7 查找最大值和最小值
4.8 创建不可变集合
4.9 实现Collector接口
第 5 章 流式操作、lambda表达式与方法引用的相关问题
5.1 java.util.Objects类
5.2 lambda表达式与效果等同于final的变量
5.3 随机数流
5.4 Map接口的默认方法
5.5 默认方法冲突
5.6 集合与映射的迭代
5.7 利用Supplier创建日志消息
5.8 闭包复合
5.9 利用提取的方法实现异常处理
5.10 受检异常与lambda表达式
5.11 泛型异常包装器的应用
第 6 章 Optional类
6.1 Optional的创建
6.2 从Optional中检索值
6.3 getter和setter方法中的Optional
6.4 Optional.flatMap与Optional.map方法
6.5 Optional的映射
第 7 章 文件I/O
7.1 文件处理
7.2 以流的形式检索文件
7.3 文件系统的遍历
7.4 文件系统的搜索
第 8 章 java.time包
8.1 Date-Time API中的基本类
8.2 根据现有实例创建日期和时间
8.3 调节器与查询
8.4 将java.util.Date转换为java.time.LocalDate
8.5 解析与格式化
8.6 查找具有非整数小时偏移量的时区
8.7 根据UTC偏移量查找地区名
8.8 获取事件之间的时间
第 9 章 并行与并发
9.1 将顺序流转换为并行流
9.2 并行流的优点
9.3 调整线程池大小
9.4 Future接口
9.5 完成CompletableFuture
9.6 多个CompletableFuture之间的协调(第1部分)
9.7 多个CompletableFuture之间的协调(第2部分)
第 10 章 Java 9 新特性
10.1 Jigsaw中的模块
10.2 接口中的私有方法
10.3 创建不可变集合
10.4 新增的Stream方法
10.5 下游收集器:filtering与flatMapping
10.6 新增的Optional方法
10.7 日期范围
附录 A 泛型与Java 8
A.2 众所周知的事实
A.3 容易忽略的事实
A.4 通配符与PECS
A.5 Java 8 API示例
A.6 小结
作者简介
封面介绍
看完了
暂无相关搜索结果!
本文档使用
BookStack
构建
×
思维导图备注
×
文章二维码
手机扫一扫,轻松掌上读
×
文档下载
请下载您需要的格式的文档,随时随地,享受汲取知识的乐趣!
PDF
文档
EPUB
文档
MOBI
文档
×
书签列表
×
阅读记录
阅读进度:
0.00%
(
0/0
)
重置阅读进度