Lamda表达式

Lamda表达式

什么是Lamda表达式

函数式接口

任何接口,如果只包含唯一一个抽象方法,那么它就是函数式接口 比如:Runnable接口

对于函数式接口,可以使用lamda表达式来创建该接口的对象

 

Lamda表达式的作用

  • 避免匿名内部类定义过多

  • 让代码看起来更简洁

  • 去掉没有意义的代码,只留下核心的逻辑

 

总结

  • lambda表达式只能有一行代码的情况下才能简化成为一行(省去花括号),如果有多行,必须使用代码块包裹

  • 前提是接口为函数式接口

  • 多个参数也可以去掉参数类型,要去就都去掉,参数需要使用括号括起来

 

public class Demo2 {
   public static void main(String[] args) {
       ILove love = null;

       love = (int a, int b) -> {
           System.out.println("I Love --> " + a);
           System.out.println("I Love --> " + b);
      };
       love.lambda(520, 521);

       love = (a, b) -> {
           System.out.println("I Love --> " + a);
           System.out.println("I Love --> " + b);
      };
       love.lambda(250, 502);

       /*
            Lambda简化前提:
            1、参数只有一个
            2、方法体只有一行代码
        */
       ILove2 love2 = a -> System.out.println("I Love2 --> " + a);
       love2.lambda(520);
  }
}

interface ILove {
   void lambda(int a, int b);
}


interface ILove2 {
   void lambda(int a);
}

 

posted @ 2021-04-20 16:49  木木彡坚持  阅读(587)  评论(0)    收藏  举报