自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 问答 (1)
  • 收藏
  • 关注

原创 映射框架--MapStruct--001--基本使用

简介MapStruct是满足JSR269规范的一个Java注解处理器,用于为Java Bean生成类型安全且高性能的映射。它基于编译阶段生成get/set代码,此实现过程中没有反射,不会造成额外的性能损失。您所要做的就是定义一个mapper接口(@Mapper),该接口用于声明所有必须的映射方法。在编译期间MapStruct会为该接口自动生成实现类。该实现类使用简单的Java方法调用来映射source-target对象,在此过程中没有反射或类似的行为发生。编译时期使用自动生成get和set方法,进行

2020-08-31 21:05:36 326

原创 Java8新特性-006-Stream初识

基本概念流由三部分组成数据源,可以是List,数组…零个或者多个中间操作,可以让前面一个流转换成另外一个流终止操作,得到最后的结果流操作的分类惰性求值只有终止操作执行时,中间操作才会执行//在执行count终止操作的时候,xxx(),yyy()中间操作才会执行stream.xxx().yyy().count();//对于没有终止操作而言,中间操作,即中间的方法是不会执行,即xxx() yyy()不会执行stream.xxx().yyy()及早求值,即指在调用方法的

2020-08-20 00:35:28 172

原创 Java8新特性-005-方法引用

lambda表达式的语法糖,一种特殊情况,让代码更加简洁入门案例public class MethodDemo { public static void main(String[] args) { List<String> list = Arrays.asList("hello","world","hello world"); //传统写法 list.forEach(item -> System.out.println(item.

2020-08-17 23:26:05 104

原创 Java8新特性-004-Optional

主要目的:为了解决NPE问题概念一个容器,内部可能包含空值或者非空值如果包含则isPresent()返回true,否则false是一个基于值的对象,所以,不要进行==的比较。基于值的对象有如下特点:final,不可变相等是基于equals方法,而不是==没有可访问的构造方法,构造通过工厂方法创建Optional是一个容器,内部真正保存数值的是final修饰的value对象提供了三个工厂方法通过empty构造,容器内部的value为Null的一个Optional容器对象.

2020-08-15 14:36:12 142

原创 Java8新特性-003-Predicate

作用判断一个传入的参数,是否符合传入的行为,返回boolean值源码@FunctionalInterfacepublic interface Predicate<T> { //唯一抽象方法 boolean test(T t); default Predicate<T> and(Predicate<? super T> other) { Objects.requireNonNull(other);

2020-08-11 23:13:03 552

原创 Java8新特性-002-Function

函数式接口@FunctionalInterfacepublic interface Function<T, R> { //抽象方法 R apply(T t); //默认方法 default <V> Function<V, R> compose(Function<? super V, ? extends T> before) { Objects.requireNonNull(befor

2020-08-10 00:14:46 331

原创 Java8新特性-001-Lambda表达式

概念Lambda表达式的基本结构(parma1,param2,param3) -> { 执行体 }函数式接口:可以认为是一个标识仅且只有一个抽象方法,独一无二的,只存在一个的接口中可以有覆盖了Object中的方法,万物皆是object的子类创建方式为下面三种lambda表达式方法引用构造器引用函数式接口注解@FunctionalInterface如果一个接口使用了该注解表示函数式接口,如果不是下面的两个条件,编译器则报错是一个接口,而不是其他类型,包括

2020-08-10 00:13:59 129

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除