lambda表达式基本使用方法
lambda表达式为java 8的新特性
平时看见别人写代码使用了“->“这种表达式,感觉挺高大上感觉贼高级,其实自己用了,也就那么回事儿(个人感觉属于装逼利器,实则降低了代码可读性)。
也不多说,看看下面的代码样例基本就能掌握lamdba表达式的基本使用。
注意:lambda转换的目标类型必须是接口
lambda官方样例:
//不需要参数,返回值为 5
() -> 5
//接收一个参数(数字类型),返回其2倍的值
x -> 2 * x
//接受2个参数(数字),并返回他们的差值
(x, y) -> x – y
//接收2个型整数,返回他们的和
(int x, int y) -> x + y
//接受一个 string 对象,在控制台打印,不返回任何值
(String str) -> System.out.print(str)
常用场景:
列表迭代:
List<Integer> list= Arrays.asList(1, 2, 3, 4, 5);
list.forEach(x -> System.out.println(x));
线程:
new Thread (() -> System.out.println("线程开启!")).start()
还有Map映射,事件监听等等场景均可以使用lambda表达式,这里就不一一列举了。