首页 > 其他 > 详细

Lambda表达式

时间:2020-10-04 20:07:12      阅读:31      评论:0      收藏:0      [点我收藏+]

概述

Lambda 表达式(lambda expression)

是一个匿名函数,它是matlab中定义的一种函数形式,他的生成方式最简捷。

lambda 抽象(lambda abstraction)

是一个匿名函数,即没有函数名的函数。

使用方法

条件:接口中只有一个方法

like = ()-> System.out.println("I like lambda5");

实例

实现类到lambda的顺序

/**
 * lambda 表达式
 */
public class Lambda01 {
    //3.静态内部类
    static class Like2 implements ILike{
        @Override
        public void lambda() {
            System.out.println("I like lambda2");
        }
    }

    public static void main(String[] args) {
        ILike like = new Like();
        like.lambda();

        like = new Like2();
        like.lambda();
        //4.局部内部类
        class Like3 implements ILike{
            @Override
            public void lambda() {
                System.out.println("I like lambda3");
            }
        }
        like = new Like3();
        like.lambda();
        //5.匿名局部内部类
        like = new ILike() {
            @Override
            public void lambda() {
                System.out.println("I like lambda4");
            }
        };
        like.lambda();
        //6.lambda表达式
        like = ()-> System.out.println("I like lambda5");
        like.lambda();
    }
}
//1.接口
interface ILike{
    void lambda();
}
//2.实现类
class Like implements ILike{
    @Override
    public void lambda() {
        System.out.println("I like lambda");
    }
}

三种写法

public class Lambda02 {
    public static void main(String[] args) {
        ILove l= null;
        l = (int a)-> { System.out.println("i love is "+a); };
        l.sayLove(1);
        l = (a)-> { System.out.println("i love is "+a); };
        l.sayLove(2);
        l = a -> { System.out.println("i love is "+a); };
        l.sayLove(3);
    }
}
interface ILove{ void sayLove(int a);}

一句话

简化只有一个方法的接口的创建方式

Lambda表达式

原文:https://www.cnblogs.com/gbhh/p/13768076.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!