SF
Java Follower
Java Follower
注册登录
关注博客
注册登录
主页
关于
RSS
Java8(7):自制多糖 switch
mizhoux
2019-10-05
阅读 12 分钟
7.8k
新特性很美好,但是如今在业界最流行的版本依然是 JDK8,所以想要在生产环境用上这么舒服的 switch,目前看来还是遥遥无期。好在我们还有 Lambda,正所谓 “自己动手,丰衣足食”,我们来试试能不能自己做出一个和 JDK12 & JDK13 的 swtich 类似的东西,给我们平淡的编码生活,加点糖。
Java8(6):使用并行流
mizhoux
2017-03-31
阅读 7 分钟
6.8k
对于斐波那契数的计算,我们都知道最容易理解的就是递归的方法: {代码...} 当然这个递归也可以转化为迭代: {代码...} 但是,对于以上两种方法,并不能并行化,因为后一项的值依赖于前一项,使得算法流程是串行的。所以引出了可以并行的计算斐波那契数的公式: => f0 和 f1 都是 1 —— 很明显我们可以对 进行并行计算...
Java8(5):使用 Optional 处理 null
mizhoux
2017-03-14
阅读 7 分钟
40.9k
但是很多时候,我们可能会忘记写 if (user != null) —— 如果在开发阶段就发现那还好,但是如果在开发阶段没有测试到问题,等到上线却出了 NullPointerException ... 画面太美,我不敢继续想下去。
Java8(4):当 forEach 需要索引
mizhoux
2016-12-21
阅读 3 分钟
42.4k
在 上一篇文章 中,我们讨论了如何使用 Java8 中 Map 添加的新方法 computeIfAbsent 来统计集合中每个元素出现的所有位置,代码如下:
Java8(3):Java8 中 Map 接口的新方法
mizhoux
2016-12-18
阅读 7 分钟
14.9k
比如,给定 list:["a", "b", "b", "c", "c", "c", "d", "d", "d", "f", "f", "g"] ,那么应该返回:a : [0]b : [1, 2]c : [3, 4, 5]d : [6, 7, 8]f : [9, 10]g : [11]
Java8(2):Java8 对字符串连接的改进
mizhoux
2016-12-17
阅读 4 分钟
17.4k
JDK1.8 时,添加了一个新的用于字符串连接的类,专门用于这种需要 分隔符 的场合,它就是 StringJoiner。StringJoiner 在构造时可以指定一个分隔符(delimiter),然后每连接一个元素它便会加上一个 delimiter,使用 StringJoiner 改写 formatList:
Java8(1):当 Lambda 遇上受检异常
mizhoux
2016-12-17
阅读 6 分钟
21.1k
Files.walk(Path) 在 JDK1.8 时添加,深度优先遍历一个 Path (目录),返回这个目录下所有的 Path(目录和文件),通过 Stream<Path> 返回;