Java Lambda表达式总结(快速上手详解)

Java系列文章目录

IDEA使用指南:快速高效掌握工具的配置与技巧(必用功能,JDK,Maven等)


一、前言

目的对Lambda表达式的总结

  • 此篇是对B站博主AlbertShen讲的Lambda进行笔记总结
  • 个人感觉讲的详细且逻辑清晰所以也进行学习总结

二、学习内容:

  • Lambda表达式介绍
  • Interface接口的基本概念
  • 为什么要引入Lambda表达式
  • Lambda表达式的语法
  • 函数式接口与Lambda表达式

三、问题描述

本人想加深对Lambda表达式的理解

  • 课本关于Lambda的知识实践太繁琐

四、解决方案:

4.1 引入Lambda表达式

interface接口声明方法不提供方法具体实现

简化实现函数式接口(Functional interface)

  1. 创建类
  2. 实现接口方法
  3. 实例化对象
  4. 调用方法
package org.example;

public class Email implements Message{

    String email;

    public Email() {

    }
    @Override
    public void send() {
        System.out.println("This is Email");
    }
}

package org.example;

public class Sms implements Message{

    String phoneNumber;

    public Sms() {

    }
    @Override
    public void send() {
        System.out.println("This is Sms");
    }
}

package org.example;
//接口声明与具体实现分开
//只业务只关心方法不关心具体实现
//类解耦与模块化
public interface Message {
    void send();//抽象方法
}


  • 每次使用都要新建对象

在这里插入图片描述

4.2 Lambda表达式作用与语法

Lamda是用来简化实现函数式接口(Functional interface)的

步骤如下:

  1. Lambda直接实现Message接口的的抽象方法
  2. 作为参数传给sendMessage()
  3. 参数可以直接调用方法

所以不需要像之前那样实例化

很明显Lambda实现了接口方法之后可以调用他

在这里插入图片描述

  • 只有单条语句可以去除括号

在这里插入图片描述

  • 复杂语句不能去除括号

在这里插入图片描述

  • Lambda用在有且只有一个抽象方法的接口上
  • 当作函数式接口
  • 简化函数式接口的实现

多个的话不知道实现哪个抽象方法
简单来说只能有一个抽象方法

只有一个抽象方法

在这里插入图片描述

  • 如果要使用Lambda我们要在接口加上注解

不加也行默认就有但是加上可以更直观告诉我们用的是Lambda表达式

在这里插入图片描述


五、总结:

5.1 学习总结:

总的来说
绿色部分实现函数式接口的方法
之后用接口就可以直接调用方法

  • 可以不用新建对象来实现方法,简化步骤

在这里插入图片描述


声明:如本内容中存在错误或不准确之处,欢迎指正。转载时请注明原作者信息(麻辣香蝈蝈)。

  • 14
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值