• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
打工人丶
博客园    首页    新随笔    联系   管理    订阅  订阅

Lambda表达式详解

1. 什么是Lambda表达式

Lambda:是Java8的一个新特性,是JAVA8最值得学习的新特性之一。

Lambda:本之上讲,是一个匿名函数,可以使用这个匿名函数,实现接口中的方法,从而简化代码。




2. Lambda表达式的使用场景

关于接口实现,可以有很多种方法来实现。

例如:

  • 设计接口的实现类
  • 使用匿名内部类
  • lambda表达式

注意:并不是所有的接口都可以使用lambda表达式来简化,当接口中的方法过多或过少时候,lambda表达式都不是很适用。lambda只能实现函数式接口。




3. 函数式接口

概念:一个接口中,要求实现类必须实现的抽象方法,有且只有一个! 这样的接口,就是函数式接口。


3.1 @FunctionalInterface

该注解用在接口上,用于判断这个接口是否是一个函数式接口,若不是,就会报错。




4. Lambda表达式语法

lambda表达式,本质上就是一个匿名函数。因此,在写lambda表达式的时候,不需要关系方法名是什么,而且也不需要关心返回值类型。

我们再写lambda表达式的时候,只需要关注参数列表和方法体




5. 函数引用

5.1 静态方法引用


5.2 非静态方法引用


5.3 构造方法引用


5.4 对象方法的特殊引用

如果在使用lambda表达式,实现某些接口的时候。lambda表达式中包含了某一个对象,此时方法体中,直接使用这个对象调用它的某一个方法就可以完成整体的逻辑。其他的参数,可以作为调用方法的参数。

posted @ 2022-05-02 14:01   不将就鸭  阅读(284)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3