怎么使用Java8中λ表达式

  介绍

这篇文章主要讲解了怎么使用Java8中λ表达式,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

<强>λ是什么

λ表达式,也可称为闭包,是Java8的新特性,作用是取代大部分内部类,优化java代码结构,让代码变得更加简洁紧凑。

<强>λ的基本语法

,(表达式)→表达或(表达式)→{语句;}

<强>λ最重要特点

用()→{}代码块替代匿名内部类

//(参数)→表达;//(参数)→语句;//(参数)→{声明},//类型声明   MathOperation除了=(int, int b)→a + b;//不用类型声明   MathOperation减法=(a, b)→a - b;

例如:用λ表达式实现Runable接口

//java8之前   新线程(新Runable () {   @Override   公共空间run () {   System.out.println (“hello");   }   }).start ();//java8之后   新线程(()→System.out.println (“hello")) .start ();

代替比较器接口内部类

//java8之前   Comparator比较器=new比较器(){   公共int比较(人p1, p2) {   如果(p1.getAge()在p2.getAge ())   返回1;   …   }   }//java8之后   Comparator比较器=(人p1, p2)→{   如果(p1.getAge()在p2.getAge ())   返回1;   …   }

是不是代码变得清爽了许多

<强>λ表达式和匿名类的对比

1,这关键字:匿名类的这关键字指向匿名类,而λ表达式的关键字指向包围λ表达式的类;

2,编译方式:Java编译器将λ表达式编译成类的私有方法,使用了java7的invokedynamic字节码指令来动态绑定这个方法;

最后说一句,λ表达式和Java8的新特性流()一起使用会更香哦!

看完上述内容,是不是对怎么使用Java8中λ表达式有进一步的了解,如果还想学习更多内容,欢迎关注行业资讯频道。

怎么使用Java8中λ表达式