摘要: 供给型接口 消费型接口 函数型接口 断言型接口 一个简单的使用多个函数式接口的例子: 部分函数式接口中有 default 方法, 可以进行组合使用! 阅读全文
posted @ 2019-01-05 20:09 wansw 阅读(1716) 评论(0) 推荐(1) 编辑
摘要: 示例一 API介绍 StringJoiner 是 java8 新增的类。 构造器: delimiter 是 , prefix 是 , suffix 是 . emptyValue 是本类的 . add : 分析源码: ​ 发现StringJoiner底层依旧使用的 StringBuilder,第一次添 阅读全文
posted @ 2019-01-05 20:05 wansw 阅读(3469) 评论(0) 推荐(0) 编辑
摘要: 一、基本示例 ​ Optional 是 Java8 提供的了 为了解决 Null 安全问题的一个 API 。善用Optional可以使我们代码中很多繁琐、丑陋的设计变得十分优雅 。 看一个示例: 改写成下面的形式和上面的没有什么太大区别。 正确示例: 再来一个示例: 改造后: 使用Optional 阅读全文
posted @ 2019-01-05 20:03 wansw 阅读(891) 评论(0) 推荐(0) 编辑
摘要: Collectors常用方法 | 工厂方法 | 返回类型 | 作用 | | | | | | toSet | Set | 把流中所有项目收集到一个 Set,删除重复项 | | toList | List | 收集到一个 List 集合中 | | toCollection | Collection | 阅读全文
posted @ 2019-01-04 09:46 wansw 阅读(499) 评论(0) 推荐(0) 编辑
摘要: 来源 https://www.imooc.com/learn/1086 作用 ​ 同步方法支持一种简单的策略来防止线程干扰和内存一致性错误,如果一个对象对多个线程可见,则对该对象变量的所有读取或写入都是通过同步方法完成的。 ​ 即:能够保证在同一时刻最多只有一个线程执行该段代码,达到保证并发安全的效 阅读全文
posted @ 2019-01-04 09:36 wansw 阅读(1714) 评论(0) 推荐(0) 编辑
摘要: 说明 本文内容来自 【Java8 In Action】 一书 四种方法引用类型 | 类型 | 示例 | | | | | 引用静态方法 | ContainingClass::staticMethodName | | 引用某个对象的实例方法 | containingObject::instanceMet 阅读全文
posted @ 2019-01-03 11:38 wansw 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 说明 : 使用的是enum关键字而不是class 多个枚举变量之间用 逗号 隔开 枚举变量名大写,多个单词之间用 _ 隔开。 如。 ALL_NUM... 定义完枚举变量后, 用分号 结束。如果只有枚举变量,而没有自定义变量,分号可以省略。 使用 只需要【类名.变量名】就可以了,和使用静态变量一样。 阅读全文
posted @ 2019-01-03 11:28 wansw 阅读(1593) 评论(0) 推荐(0) 编辑
摘要: CopyOnWrite容器即写时复制的容器。通俗的理解是当我们往一个容器添加元素的时候,不直接往当前容器添加,而是先将当前容器进行Copy,复制出一个新的容器,然后新的容器里添加元素,添加完元素之后,再将原容器的引用指向新的容器。 ​ CopyOnWrite容器也是一种读写分离的思想,读和写不同的容 阅读全文
posted @ 2019-01-03 11:23 wansw 阅读(233) 评论(0) 推荐(0) 编辑