Java8 lambda 表达式

只有一个方法的接口,为了一个简短的语句却要实现这个接口,要多写四五行没用的代码,太麻烦了。 所以要有lambda

无参数 ()-> println("do something")

有一个参数 (int x) -> println(x);

有多个参数 (String a, String b) -> println(a + b);

方法体有多句大括号包起来(int x)-> { println("before print x"); println(x); }

当类型可以被编译器推导的时候 也可以省略类型 (a , b)  -> println(a + b);  

一个参数时不光可以省略类型 还可以省略括号,如 x -> println(x)  ; 如果带上类型则不可以省略括号 

箭头左边的是原接口方法的形参声明, 右边的是方法体的实现。 如果实现不止一句话可以用 大括号包起来

延伸阅读:

Java8 lambda表达式10个示例
原文地址:https://www.cnblogs.com/lonkiss/p/6262644.html