随笔分类 -  JAVA8 新特性

主要用于 JDK1.8 及以上相关最新应用总结
摘要:背景 mac 上安装了多个 jdk 版本,而 MacOS 默认会选择在 /Library/Java/JavaVirtualMachines 目录下的最新版本作为当前JDK版本,但是我们有的时候又不想使用当前这个默认版本,接下来解决如何随意切换 jdk 版本的骚操作了。 查看 macOS 下 JDK 阅读全文
posted @ 2022-02-22 17:29 星火燎原智勇 阅读(576) 评论(0) 推荐(0)
摘要:背景 Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。 使用 Lambda 表达式可以使代码变的更加简洁紧凑。 语法 lambda 表达式的语法格式如下: (parameters) -> expr 阅读全文
posted @ 2021-04-22 23:22 星火燎原智勇 阅读(219) 评论(0) 推荐(0)
摘要:背景 Java 8 API 添加了一个新的抽象称为:流Stream,它可以让你以一种声明的方式处理数据。Stream API 可以极大提高写出高效率、干净、简洁的代码。 这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合等。具体类似于如 阅读全文
posted @ 2021-04-22 23:14 星火燎原智勇 阅读(126) 评论(0) 推荐(0)
摘要:前提 在 Java8 中,我们可以通过使用 forEach 的新功能结合 Stream 可以更加方便的对 Map、List、Set等集合进行遍历。 主题 Loop a Map Loop a List forEach and Consumer forEach and Exception handlin 阅读全文
posted @ 2021-04-18 23:06 星火燎原智勇 阅读(1606) 评论(0) 推荐(0)
摘要:背景 接着《1、Optional 应用》的基础,我们直接来看下线上的实际应用。 线上示例 1、案例一:循环内部判空 原始代码 List<ConstantScoreQueryBuilder> validBuilderList = Lists.newArrayList(); for (ConstantS 阅读全文
posted @ 2021-04-18 22:08 星火燎原智勇 阅读(182) 评论(0) 推荐(0)
摘要:前言 相信不少小伙伴已经被java的NPE(Null Pointer Exception)所谓的空指针异常搞的头昏脑涨, 有大佬说过“防止 NPE,是程序员的基本修养。”但是修养归修养,也是我们程序员最头疼的问题之一,那么我们今天就要尽可能的利用Java8的新特性 Optional来尽量简化代码同时 阅读全文
posted @ 2021-04-15 21:14 星火燎原智勇 阅读(2899) 评论(0) 推荐(0)