介绍
怎么在Java8中使用λ表达式?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
1。λ表达式介绍
λ表达式是Java8提供的新特性之一,也可以称之为闭包;它支持Java能够进行简单的<代码>函数式编程> 代码,也就是说可以把一个匿名函数作为一个方法的参数进行传递,其格式分为三部分,第一部分为入参列表,第二部由<代码>→代码>固定组成,第三部分为方法体;
public class LambdaTest { ,,,public static void main (String [], args), { ,,,,,,,//,使用λ表达式创建线程 ,,,,,,,Thread Thread =, new 线程((),→,{ ,,,,,,,,,,,System.out.println (“thread running"); ,,,,,,,}); ,,,,,,,thread.start (); ,,,} }
//运行结果
引用>
线程运行2。λ表达式的重要特征
可选的参数类型声明:不需要声明参数的类型,编译器可以统一识别参数值;
public class LambdaTest { ,,,private Integer ; ,,,public LambdaTest (Integer ), { ,,,,,,,this.a =,, ,,,} ,,,public void 打印(LambdaInterface lambdaInterface), { ,,,,,,,lambdaInterface.print (this.a); ,,,} ,,,public static void main (String [], args), { ,,,,,,,LambdaTest LambdaTest =, new LambdaTest (123); ,,,,,,,//,声明参数类型 ,,,,,,,System.out.println(“声明参数类型“); ,,,,,,,lambdaTest.print ((Integer ),→, { ,,,,,,,,,,,System.out.println (“a:,“, +,); ,,,,,,,}); ,,,,,,,//,不声明参数类型 ,,,,,,,System.out.println(“不声明参数类型“); ,,,,,,,lambdaTest.print ((a),→, { ,,,,,,,,,,,System.out.println (“a:,“, +,); ,,,,,,,}); ,,,} } interface LambdaInterface  { ,,,void 打印(Integer ); }//运行结果
引用>
声明参数类型
: 123
不声明参数类型
: 123可选的参数圆括号:一个参数时不需要定义圆括号,但没有参数或者多个参数时则必须要定义。
public class LambdaTest { ,,,private Integer ; ,,,public LambdaTest (Integer ), { ,,,,,,,this.a =,, ,,,} ,,,public void 打印(LambdaInterface lambdaInterface), { ,,,,,,,lambdaInterface.print (this.a); ,,,} ,,,public static void main (String [], args), { ,,,,,,,LambdaTest LambdaTest =, new LambdaTest (123); ,,,,,,,//,定义参数圆括号 ,,,,,,,System.out.println(“定义参数圆括号“); ,,,,,,,lambdaTest.print ((a),→, { ,,,,,,,,,,,System.out.println (“a:,“, +,); ,,,,,,,}); ,,,,,,,//,一个参数可不定义参数圆括号 ,,,,,,,System.out.println(“一个参数可不定义参数圆括号“); ,,,,,,,lambdaTest.print (a →, { ,,,,,,,,,,,System.out.println (“a:,“, +,); ,,,,,,,}); ,,,} } interface LambdaInterface  { ,,,void 打印(Integer ); }//运行结果
引用>
定义参数圆括号
: 123
一个参数可不定义参数圆括号
: 123可选的大括号:如果方法体仅有一个语句,可不需要使用大括号;
public class LambdaTest { ,,,private Integer ; ,,,public LambdaTest (Integer ), { ,,,,,,,this.a =,, ,,,} ,,,public void 打印(LambdaInterface lambdaInterface), { null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null怎么在Java8中使用λ表达式