![](https://img-blog.csdnimg.cn/20210914191540112.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
日益丰满的Java新特性
文章平均质量分 80
从应用出发,介绍java8、9、10、11的新特性
sermonlizhi
行百里者半九十
展开
-
Java8新特性-Lambda表达式与方法引用
一、Lambda表达式Lambda表达式的格式举例:(o1,o2) -> Integer.compare(o1,o2);“->”:lambda操作符或箭头操作符“->左边”:lambda形参列表(其实就是接口中的抽象方法的参数列表)“->右边”:lambda体(其实就是重写接口的抽象方法的方法体)Lambada表达式的本质就是接口(函数式接口)的实例1.1 无参写法Runnable rab1 = new Runnable() { @Override原创 2021-09-14 19:20:43 · 290 阅读 · 0 评论 -
Java8新特性-Stream API
一、Stream简介1.1 Stream API说明Stream API(java.util.stream)把真正的函数式编程风格引入到Java中,提供了简单高效的操作Stream 是Java8中处理集合的关键抽象概念,它可以指定对集合进行操作,可以执行非常复杂的查找、过滤和映射数据等操作。使用Stream API对集合数据进行操作,就类似于使用SQL执行的数据库查询。也可以使用Stream API来并行执行操作1.2 什么是StreamStream是数据渠道,用于操作数据源(集合、数组等)所原创 2021-09-20 17:00:52 · 177 阅读 · 0 评论 -
Java8新特性-Optional类
一、Optional简介与使用1.1 Optional简介在Java应用开发的过程中,NPE(NullPointerException)问题是一个非常常见的问题,为了避免空指针异常对代码的破坏,我们不得不在各种可能出现空指针的地方通过if-else来校验,造成代码累赘,严重影响代码可读性。为了优雅的解决NPE问题,Google公司著名的Guava项目引入了Optional类,Guava通过检查空值的方式来防止代码污染,它鼓励程序员编写简单干净的代码。受到Google Guava项目的启发,Optiona原创 2021-09-22 17:20:26 · 639 阅读 · 0 评论 -
CompletableFuture使用详解
一、简介1.1 概述在上一篇文章《CompletionService使用与源码分析》中,已经介绍过了Future的局限性,它没法直接对多个任务进行链式、组合等处理,需要借助并发工具类才能完成,实现逻辑比较复杂。而CompletableFuture是对Future的扩展和增强。CompletableFuture实现了Future接口,并在此基础上进行了丰富的扩展,完美弥补了Future的局限性,同时CompletableFuture实现了对任务编排的能力。借助这项能力,可以轻松地组织不同任务的运行顺序、原创 2022-03-08 16:38:08 · 115998 阅读 · 40 评论