笔记:Lambda表达式在java中的使用

Lambda使用方法:接口 对象名 = (形参)-> {方法体}
有一个iLike接口:
	interface iLike{
		void lambda(int a);
	}
	
则利用Lambda表达式实现如下:
	iLike like = (int a) ->{
        System.out.println("大括号内是方法体");
    };

当我们要创建一个类继承某接口时,并且这个类只需要用到一次,我们可以有以下五种方法创建类的对象:

  • 外部类实现接口
  • 静态内部类实现接口
  • 局部内部类实现接口
  • 匿名内部类实现接口
  • Lambda表达式——只有当接口只有一个抽象方法,即函数式接口的时候可以使用;

实例程序如下:

public class TestLambda1 {
    //第2种方法:静态内部类
    static class like2 implements iLike{
        @Override
        public void lambda() {
            System.out.println("I like lanbda2");
        }
    }

    public static void main(String[] args) {
        //测试第1种方法
        iLike like = new like1();
        like.lambda();

        //测试第2种方法
        like = new like2();
        like.lambda();

        //第3种方法:局部内部类
        class like3 implements iLike{
            @Override
            public void lambda() {
                System.out.println("I like lanbda3");
            }
        }
        //测试第3种方法
        like = new like3();
        like.lambda();

        //第4种方法:匿名内部类,没有类的名称,必须借助接口或者父类
        like = new iLike() {
            @Override
            public void lambda() {
                System.out.println("I like lanbda4");
            }
        };
        like.lambda();


        //第5种方法:lambda简化
        like = () ->{
            System.out.println("I like lanbda5");
        };
        like.lambda();
    }
}

//定义一个接口:只有一个抽象方法,那就是函数式接口
interface iLike{
    void lambda();
}

//第1种方法:通过定义外部类,然后实现接口
class like1 implements iLike{
    @Override
    public void lambda() {
        System.out.println("I like lanbda1");
    }
}

运行结果显示,五种方法都可以达到效果。
运行结果

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值