java8 lambda表达式简化写法 作者:马育民 • 2022-04-08 22:25 • 阅读:10091 # 准备 ### 接口 ``` public interface IPhone { void call(String num); } ``` ### lambda完整写法 ``` IPhone huawei = (String num) -> { System.out.println("打电话给:" + num); }; huawei.call("110"); ``` # 形参类型可省略 编译器可以识别 ``` IPhone huawei = (num) -> { System.out.println("打电话给:" + num); }; huawei.call("110"); ``` # 只有一个参数,可省略 `()` **注意:** 多个参数必须定义 `()` ``` IPhone huawei = num -> { System.out.println("打电话给:"+num); }; huawei.call("110"); ``` # 方法体只有一行,`{}` 可省略 ``` IPhone huawei = num -> System.out.println("打电话给:"+num); huawei.call("110"); ``` # return可省略 如果方法体只有一行语句,且需要返回值,则可以省略 `return`,同时 `{}` 也要省略 **注意:** 有 `{}`,则不能省略 `return` ### 定义接口 ``` public interface IMath { //运算。必须只有一个抽象方法,才能用 lambda 表达式 int operation(int a, int b); } ``` ### lambda简化写法 ``` IMath math = (a,b) -> a+b; int res = math.operation(2,2); System.out.println(res); ``` 原文出处:http://malaoshi.top/show_1IX361WKtvCx.html