lambda表达式, 其实本质来讲, 就是一个匿名函数。 因此在写lambda表达式的时候, 不需要关心方法名是什么。
实际上, 我们在写lambda表达式的时候, 也不需要关心返回值类型。
我们在写lambda表达式的时候, 只需要关注两部分内容即可: 参数列表 和 方法体
public class Syntax {
public static void main(String[] args) {
// 1. 无参、无返回值的方法实现
NoneReturnNoneParameter lambda1 = () -> {
System.out.println("无参、无返回值方法的实现");
};
lambda1.test();
// 2. 有参、无返回值的方法实现
NoneReturnSingleParameter lambda2 = (int a) -> {
System.out.println("一个参数、无返回值方法的实现: 参数是 " + a);
};
lambda2.test(10);
// 3. 多个参数、无返回值方法的实现
NoneReturnMutipleParameter lambda3 = (int a, int b) -> {
System.out.println("多个参数、无返回值方法的实现: 参数a是 " + a + ", 参数b是 " + b);
};
lambda3.test(10, 20);
// 4. 无参、有返回值的方法的实现
SingleReturnNoneParameter lambda4 = () -> {
System.out.println("无参、有返回值方法的实现");
return 666;
};
System.out.println(lambda4.test());
// 5. 一个参数、有返回值的方法实现
SingleReturnSingleParameter lambda5 = (int a) -> {
System.out.println("一个参数、有返回值的方法实现: 参数是 " + a);
return a * a;
};
System.out.println(lambda5.test(9));
// 6. 多个参数、有返回值的方法实现
SingleReturnMutipleParameter lambda6 = (int a, int b) -> {
System.out.println("多个参数、有返回值的方法实现: 参数a是 " + a + ", 参数b是 " + b);
return a * b;
};
System.out.println(lambda6.test(10, 20));
}
}