Lambda 表达式,也可称为闭包,它是Java8的一个最重要新特性。Lambda允许把函数作为一个方法的参数(函数作为参数传递进方法中)。
语法结构
(parameters) ->expression或(parameters) ->{ statements; }
简单例子:
提供一个参数为一个Runnable的方法
publicstaticvoidrunLambda(Runnablerunnable) { System.out.println("执行一个Runnable方法"); runnable.run(); System.out.println("执行完毕"); }
然后调用该方法,如果是在Java8以前,写法如下:
publicstaticvoidmain(String[] args) { runLambda(newRunnable() { publicvoidrun() { System.out.println("正在执行runnable方法"); } }); }
在Java8之后,可以这样写:
publicstaticvoidmain(String[] args) { runLambda(() ->System.out.println("正在执行runnable方法")); }
输出如下: