Lamda表達式
Lambda λ的使用好處:
-
避免匿名內部類定義過多
-
可以讓你的代碼看起來很簡潔
-
去掉一堆沒有意義的代碼,只留下核心的邏輯
通過2->6 一步一步實現其方法。
public class LambdaTest {
//3.靜態內部類
static class Like2 implements ILike{
@Override
public void lamda() {
System.out.println("I like lambda2");
}
}
public static void main(String[] args) {
//2.實現類
ILike iLike = new Like1();
iLike.lamda();
//3.靜態內部類
iLike = new Like2();
iLike.lamda();
//4.局部內部類
class Like3 implements ILike{
@Override
public void lamda() {
System.out.println("I like lambda3");
}
}
iLike = new Like3();
iLike.lamda();
//5.匿名內部類,沒有類的名稱,必須藉助接口或者父類
iLike = new ILike() {
@Override
public void lamda() {
System.out.println("I like lambda4");
}
};
iLike.lamda();
//6.用Lambda實現
iLike= ()->{
System.out.println("I like lambda5");
};
iLike.lamda();
}
}
//1.定義函數式接口
interface ILike{
void lamda();
}
//2.實現類
class Like1 implements ILike{
@Override
public void lamda() {
System.out.println("I like lambda1");
}
}