函数式接口:只含有一个虚拟方法的接口可用@FuctionalInterface修饰,这样的接口叫做函数式接口。
Lambda:主要用于简化匿名内部类
@FunctionalInterface
interface IComputer {
public int add(int a,int b);
}
public class Body{
public static void main(String[] args) {
IComputer computer = new IComputer() {
@Override
public int add(int a, int b) {
return a+b;
}
};
//Lambda公式:接口变量=([参数列表])->{}
//如果返回值仅仅只有一个时,则大括号可以省略,return也可以省略。
IComputer computer1 =(a,b)->{
return a+b;
};
IComputer computer2 =(a,b)->a+b;
int result=computer.add(1, 1);
int result1=computer1.add(1, 2);
int result2=computer2.add(2, 2);
System.out.println(result + " " + result1 + " " + result2);
}
}
结果:2 3 4