Java中的Lambda表达式

Lambda表达式的标准格式

格式:(形式参数)->{代码块}

形式参数:如果有多个参数,参数之间用逗号隔开 如果没有参数,留空即可

->:由英文中画线和大于符号组成,固定写法。代表着指向动作

代码块:是指我们具体要做的事情。

Lambda表达式的使用前提

  1. 有一个接口

  2. 接口中有且仅有一个抽象类

复制代码
package day7;
​
public interface LambdaInterface {
    void eat();
}
​
复制代码
package day7;
​
public class ImplementInterface implements LambdaInterface{
    @Override
    public void eat() {
        System.out.println("好好学习才可以找到好工作");
    }
}
​
复制代码
package day7;
​
public class LambdaTest  {
    public static void main(String[] args) {
        //在主方法中调用userinterface方法
        LambdaInterface im = new ImplementInterface();
        userinterface(im);
        //在匿名内部类中
        userinterface(new LambdaInterface() {
            @Override
            public void eat() {
                System.out.println("好好学习才可以找到好工作");
            }
        });
        //在Lambda方法中调用方法
        userinterface(()->{
            System.out.println("好好学习才可以找到好工作");
        });
    }
    private static void userinterface(LambdaInterface im){
        im.eat();
    }
}
​

注意 小括号里面的的参数类型可以省略 但是如果省略要一起省略 如果加参数类型也是一起加

如果小括号只有一种参数类型 则可以省略

相关推荐
蛋先生DX几秒前
明明都是源码到CPU,各语言中间原理咋不是一个套路?
java·javascript·go
萧瑟余晖5 分钟前
Java深入解析篇十三之Java日志API(JUL)详解
java·开发语言
随遇而安zx18 分钟前
Spring Cloud Gateway 微服务网关 设计思想与深度解析
java·spring cloud·微服务·架构
catino26 分钟前
spring-事务@Transactional
java·数据库·spring
luj_176831 分钟前
毒素驱动的生物自毁机制探析
服务器·c语言·开发语言·经验分享·算法
万年咸鱼38 分钟前
Java List 接口详解:从基础到实战
java·windows·list
海兰40 分钟前
【 Python 量化交易】第6章:数据可视化
开发语言·python·信息可视化
多多鼠40 分钟前
Tool Calling的信任边界:从协议校验到执行沙箱的完整链路设计
运维·开发语言·网络·人工智能·python·langchain
Java的搬运工41 分钟前
Spring boot 事件监听
java·spring boot·spring·编程语言
啊阿狸不会拉杆44 分钟前
《计算机网络-自顶向下方法》1.5 协议层次及其服务模型 读书笔记
开发语言·计算机网络·php