后端开发19小时前
目录 一、基本语法 二、使用场景 三、作用 四、使用案例 三、总结 Java 8是Java语言的一个重要版本,其中引入了许多新特性和改进,其中一个值得关注的特性是接口的默认方法和静态方法。这篇文章将会介绍这些新特性的基本语法、使用场景、作用,并且举例说明。 一、基本语法 在Java 8之前,接口只能定义抽象方法,所有的方法都必须由实现该接口的类来实现。但是...
后端开发2025年09月09日
这篇文章主要讲解了“Java8中怎么使用Stream流式编程”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java8中怎么使用Stream流式编程”吧! 一、Stream中间操作 Stream的中间操作是指在流链当中,可以对数据进行处理操作,包括filter过滤、map映射转换、flatMap合并、dist...
后端开发2025年09月08日
目录 一、Optional类的出现 二、Optional类概述 三、Optional类常用方法 1. 创建Optional类对象的方法 2. 判断Optional容器中是否包含对象 3. 获取Optional容器的对象 四、代码演示 一、Optional类的出现 到目前为止,臭名昭著的空指针异常是导致Java应用程序失败的最常见原因。以前,为了解决空指针异...
后端开发2025年09月06日
最近的需求里有这样一个场景,要校验一个集合中每个对象的多个Id的有效性。比如一个Customer对象,有3个Id:id1,id2,id3,要把这些Id全部取出来,然后去数据库里查询它是否存在。 @Data @AllArgsConstructor public class Customer { private String name; private Stri...
后端开发2025年09月06日
目录 Stream.concat flatMap 最近的需求里有这样一个场景,要校验一个集合中每个对象的多个Id的有效性。比如一个Customer对象,有3个Id:id1,id2,id3,要把这些Id全部取出来,然后去数据库里查询它是否存在。 @Data @AllArgsConstructor public class Customer { private...
后端开发2025年08月27日
目录 Java8 Stream之groupingBy分组 Collectors.groupingBy()分组之常见用法 Collectors.groupingBy() 分组之统计每个分组的count Collectors.groupingBy() 分组之统计分组平均值 Collectors.groupingBy() 分组之统计分组总值 Collectors...
后端开发2025年08月24日
目录 前言 一:创建LocalDate 1、now() 2、now(Clock clock) 3、now(ZoneId zone) 4、of(int year, int month, int dayOfMonth) 5、ofYearDay(int year,int dayOfYear) 6、ofEpochDay(long epochDay) 7、parse...
后端开发2025年08月24日
目录 一、BigDecimal 求最大值和最小值 二、Integer 求最大值和最小值 三、Long 求最大值和最小值 四、Double 求最大值和最小值 一、BigDecimal 求最大值和最小值 1. stream().reduce()实现 List<BigDecimal> list = new ArrayList&...
后端开发2025年08月18日
目录 一、简介 特征 引入 Lambda表达式的总结 三、Lambda表达式的使用 无参、无返回值 有参无返回值 无参数有返回值 有参数有返回值 四、Lambda表达式的注意事项 五、函数式接口 内置函数式接口 函数式接口使用场景 六、方法调用 七、Stream流式编程 什么是 Stream? 使用 Stream流的步骤 八、串行流和并行流 九、Optio...
后端开发2025年08月13日
目录 创建CompletableFuture 处理CompletableFuture的结果 处理CompletableFuture的异常 总结 Java 8中引入了CompletableFuture类,它是一种方便的异步编程工具,可以处理各种异步操作,如网络请求、文件IO和数据库操作等。它是Java的Future接口的扩展,提供了一些有用的方法来创建、操作...