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);
}
浙公网安备 33010602011771号