lambda表达式和方法引用

其实lambda和方法引用是两个东西,但是方法引用一般是配合着方法引用效果会更好

更能体现java代码的简洁行

先了解方法引用就不会把知识点搞混

1,静态方法引用

首先大家使用静态方法,唯一的功能就是用类名调取然而关键就是这里,

所以方法引用可以写为    Math::ads   

这就是引用,所以不要想的太难

但是一般这样写没有意义

需要配合lambda使用才能体现价值

想掉静态方法,直接掉就成对吧,使用lambda才是我们要做的目的

方法引用的理解不需要太深,知道是为什么就是啦,

想要理解方法引用,答案就在眼前,

大部分的方法引用和lambda是配合使用的,实际开发中,也不需要我们写着一类方法,

简单来说,这种写法,是java设计者,让我们使用的工具而已,所以我们只需要掌握怎么使用

即可,也就是了解每一个Lambda方法写入的匿名内部类,然后内部类中重写的方法,

之后,我们的参数是怎么被方法进行使用的,借助给的规则,进行操作数据,

然后就是在操作的过程中,java设计者给我们创造的巧合,哈哈,就促使了方法引用的出现

lambda表达式写完之后,参数是有的,然后方法体是有的,但是如果参数,在被使用的过程中

有出现了其他方法的调用就,出现了方法引用

先说明一下: 方法引用的核心规则,已知即可省略

分为四种,但是使用的道理都是一样的

1.如果是静态方法调用参数,就可以直接 静态类名::静态方法名

是不是觉得是工具类调用一样简单

另外三个也一样

方法引用的格式-实例方法引用

对象名::实例方法

Arrays.sort(studentArray, (o1, o2) -> stu.compareStudent(o1, o2));

就可以写为

Arrays.sort(studentArray, stu::compareStudent);

方法引用的格式-特殊类型方法引用

 

类名::实例方法名

Arrays.sort(studentArray,(o1,o2) -> o1.compareStudent2(o2));

Arrays.sort(studentArray, Student::compareStudent2);

方法引用的格式-构造方法引用

        类名::new

useCreate(name -> new Student(name));

useCreate(Student::new);

还有一个重点

使用能使用Lambda表达式的匿名内部类

必须是只有一个抽象方法的的接口

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值