语法
Lambda表达式的操作符为:->,操作符左边为接口抽象方法的形参,右边为方法体。
- 无形参无返回值
@Test
public void test1(){
Runnable runnable=()->{
System.out.println("你吃饭了吗!");
};
runnable.run();
}
- 有形参无返回值
@Test
public void test2(){
Consumer<String> consumer=(str)->{
System.out.println(str);
};
consumer.accept("黄先生:今天你消费了吗?");
}
另外,当只有一个参数的时候,str外面的小括号可以省略
当Lambda表达式只有一条语句时,且是return语句,方法体的大括号可以省略。
类型推断
当接口抽象方法带泛型时,返回类型和参数类型相同时,形参的参数类型可以省略。