初学lambda表达式
1.lambda表达式概念
Java8新特性,本质上是函数式编程,支持把函数当作参数传给方法
2.函数式接口 Functional Interface
- 接口只包含一个方法,称之为函数式接口
- 对于函数式接口,可以用lambda表达式创建接口对象
例:
//有如下一个函数式接口
interface Like{
void printLike();
}
//可以这样创建他的接口对象
Like like = new Like() {
@Override
public void printLike() {
System.out.println("i like to sleep");
}
};
//用lambda表达式可以这样简化
Like lk = () -> System.out.println("i like to sleep");
3.简化规则
- 如果方法只有一行可以省略大括号
- 如果参数有且只有一个可以省略小括号 注:(没有参数的话 括号还得有)
- 如果有参数,可以全部去掉参数类型(也可以全保留)