• 每日学到 54 - lambda表达式


    目录

    1.什么是lambda表达式

    2.如何使用

          1)    // 通过实现类 创建 LambdaInterface 类型的实例化对象

          2)    //通过匿名内部类的方式创建 LambdaInterface 类型对象

          3)通过lambda表达式创建接口的实例对象 要求:接口中只能有一个抽象的方法

    3.lambda表达式实现方法的引用


    1.什么是lambda表达式

        java8的新特性,本质是匿名函数

    2.如何使用

          1)    // 通过实现类 创建 LambdaInterface 类型的实例化对象

            LambdaInterface lambdaInterface =  new LambdaClass();
            lambdaInterface.method1();

          2)    //通过匿名内部类的方式创建 LambdaInterface 类型对象

            LambdaInterface  lambdaInterface1 = new LambdaInterface() {
                @Override
                public void method1() {
                    System.out.println("通过匿名内部类创建的对象");
                }
            };
            lambdaInterface1.method1();

          3)通过lambda表达式创建接口的实例对象 要求:接口中只能有一个抽象的方法

            方法没有返回值,没有参数
                        LambdaInterface  lambdaInterface = ()->{
                System.out.println("通过lambda表达式创建的对象");
            };
                    简化lambda写法时 如果参数列表中没有参数  小括号是不能省略的

            方法没有返回值,有一个参数
                        LambdaInterface lambdaInterface = (int a)->{
                System.out.println("a = " + a);
            };
                        LambdaInterface lambdaInterface = a->System.out.println("a = " + a);
                    重写方法时 可以省略参数的类型
                    参数列表中只有一个参数 可以省略小括号
                    如果重写的方法中只有一条语句  大括号可以省略

            方法没有返回值,有多个参数
                        LambdaInterface lambdaInterface = (a,b)->{
                System.out.println("a = " + a);
                System.out.println("b = " + b);
            };
                    含有多个参数时 小括号不能省略

            方法有返回值,没有参数
                        LambdaInterface  lambdaInterface = ()->{
                return 20;
            };
                        LambdaInterface  lambdaInterface = ()-> 20;
                    如果有返回值并且方法体中只有一条语句  大括号可以省略 return关键词也可以省略

            方法有返回值,有一个参数
                        LambdaInterface lambdaInterface = (a)->{
                return a;
            };
                        LambdaInterface lambdaInterface = a -> a;

            方法没有返回值,有多个参数
                        LambdaInterface lambdaInterface = (a,b)-> {
                return a+b;
            };
                        LambdaInterface lambdaInterface = (a,b)-> a+b;

    3.lambda表达式实现方法的引用

        方法引用在JDK 8中使用方式相当灵活,有以下几种形式:
        1. instanceName::methodName 对象::方法名
        2. ClassName::staticMethodName 类名::静态方法
        3. ClassName::methodName 类名::普通方法
        4. ClassName::new 类名::new 调用的构造器
        5. TypeName[]::new String[]::new 调用数组的构造器

  • 相关阅读:
    Selenium —— 网页frame与多窗口处理!
    tf.nn
    电动尾门驱动芯片TMI8720-Q1,越来越多的电机已被应用到汽车上
    【Vue 开发实战】基础篇 # 8:如何触发组件的更新
    0021-0022:华为OD机考:消耗资源总数-数组合并
    如何提高文章质量,不被发文助手“推荐受影响”
    The Rise and Potential of Large Language Model Based Agents: A Survey
    19_axios入门到进阶
    JS笔记--Web APIS(下)
    【JVM笔记】执行引擎的理解与工作过程
  • 原文地址:https://blog.csdn.net/m0_52588421/article/details/127427453