Lambda表达式

一、lambda表达式语法及应用场景

  1)函数式接口

  lambda表达式前置条件:

  1.必须是函数式接口才可以使用lambda表达式

  函数式接口的特点:

  1.1接口中标注了@FunctionalInterface注解

  1.2接口中只有一个抽象方法,会被编译器自动识别成函数式接口。

  1.3接口中有一个抽象方法,同时包含了Object类的其他抽象方法也会被识别成抽象接口(所有的类都是Object类的子类)。

  2)lambda表达式的三种编写方式:

  expression:单条语句表达式

  statement:语句块

  reference:方法引用

   1.expression单条语句表达式:只能是一个完整的语句

   expression表达式中不需要写return关键字,解释器会自动将表达式的计算结果进行返回。

   (参数)->表达式

   2.statement语句块

    (参数)->{表达式};接口中抽象方法有返回值的话,需要在表达式后加上括号。

   3.reference:方法引用

    如果某个方法在结构上与lambda表达式中对应的方法是匹配的那么就可以直接引用给lambda表达式,其总共包含4种引用类型

    基于实例方法的引用:Object::methodName

    构造方法引用:className::new

    基于参数实例方法引用:className::methodName

    静态方法引用:className::staticMethodName

       

转载于:https://www.cnblogs.com/UalBlog/p/10815117.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值