04. Lambda表达式的使用场景

37 阅读1分钟

04. Lambda表达式的使用场景

Lambda表达式的语法是非常简洁的,但是也不是随意使用的,使用的场景如下:

  1. 方法的参数或局部变量类型必须为借口才能使用lambda
  2. 接口中有且仅有一个抽象方法

Lambda和匿名内部类的对比

  1. 所需类型不一样
    • 匿名内部类的类型可以是类、抽象类、接口
    • lambda表达式需要的类型必须是接口
  2. 抽象方法数量不一样
    • 匿名内部类所需的接口中的抽象方法数量是随意的
    • lambda表达式所需的接口中只能有一个抽象方法
  3. 实现原理不一样
    • 匿名内部类是在编译后形成一个class
    • lambda表达式是在程序运行的时候动态生成clss