一、什么是Lamda表达式?
JAVA8新特性,来源于数学中的λ[ˈlæmdə] 演算,
是一套关于函数(f(x)定义、输入量、输出量的计算方案。
二、Lambda表达式语法格式
1. 第一种语法格式
(parameters) -> { statements; }
parameters :函数的参数列表
statements :执行语句
-> :使用指定参数去完成某个功能
//原代码
public int add(int a, int b){
return a+b;
}
//可以简化成下面这种形式
(int a, int b)->{return a + b;}
2. 第二种语法格式:
(parameters) -> expression
parameters :函数的参数列表
expression :表达式
-> :使用指定参数去完成某个功能
//原代码
public int add(int a, int b){
return a+b;
}
//可以简化成下面这种形式
(int a, int b) -> a + b
三、Lambda实战案例
1. 使用Lambda的前提
必须有一个函数式接口
有且只有一个抽象方法的接口
@FunctionnalInterface注解
2. 具体的实现
先定义两个接口
其中Service01中add抽象方法带有两个参数,Service02中printMe是个无参的抽象方法
@FunctionalInterface
public interface MyService01 {
int add(int a, int b);
}
@FunctionalInterface
public interface MyService02 {
void printMe(String me);
}
用Lamda表达式实现接口: