首页 > 其他 > 详细

Lambda

时间:2020-06-11 09:28:47      阅读:41      评论:0      收藏:0      [点我收藏+]

Lambda

内部类

 package com.yongsheng.lamda;
 /*
 推导lambda表达式
  */
 public class TestLambda1 {
     public static void main(String[] args) {
         ILike like = null;
         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();
 ?
    }
 ?
     //3.静态内部类
     static class Like2 implements ILike{
 ?
         @Override
         public void lambda() {
             System.out.println("I like lambda2");
        }
    }
 }
 ?
 //1.定义一个函数式接口
 interface ILike{
     void lambda();
 }
 ?
 //2.实现类
 class Like implements ILike{
 ?
     @Override
     public void lambda() {
         System.out.println("I like lambda1");
    }
 }

Lambda

 package com.yongsheng.lamda;
 ?
 public class TestLambda2 {
    public static void main(String[] args) {
        ILove love = null;
 ?
        love = (int a)->{
            System.out.println("I love you1 ");
        };
        love = (a)->{
            System.out.println("I love you2 ");
        };
        love = a->{
            System.out.println("I love you3 ");
        };
        love = a-> System.out.println("I love you4 ");
         
        love.love(520);
 ?
 ?
    }
 }
 ?
 interface ILove{
    void love(int a);
 }
 ?

总结

  1. lambda表达式只能有一行代码的情况下才能简化成为一行,如果有多行,那么就用代码块包裹。

  2. 前提接口必须是函数式接口。

  3. 多个参数也可以去掉参数类型,要去掉必须都去掉,如:(a, b) - > {};

Lambda

原文:https://www.cnblogs.com/potatonion/p/13091266.html

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