课程咨询 :18487146383

  • 达内长沙java培训详解:为什么要用Lambda表达式

    发布:长沙Java培训      来源:开源中国      时间:2016-12-07

  • lambda表达式能让我们拥有更加紧凑的代码,更加易于阅读和跟踪。

    通过比较使用和没使用lambda的main方式实现,当它一下子把代码变得简短的时候,我们切实地看到了lambda表达式的能力:

    public static void main(String[] args) {

    LambdaDemo demo = new LambdaDemo();

    String something = "I am learning Lambda";

    /**/

    Printer printer = (String toPrint)->{System.out.println(toPrint);};

    /**/

    demo.printSomething(something, printer);

    }

    达内长沙java培训还可以让代码比这里所展示的更简洁。这样的事情发生时,你甚至无需指定箭头左边参数的类型,而其类型会由编译器根据接口方法的形参推断出来。

    Printer printer = (toPrint)->{System.out.println(toPrint);};

    我们还可以做得更好。lambda的另外一个特性就是:如果只有一个参数,就可以将括弧完全消除掉。同样的,如果在箭头右边只有一条语句,也可以将大括号去掉:

    Printer printer = toPrint -> System.out.println(toPrint);

    现在的代码看起来真正变得可爱起来,不过我们才刚刚开始而已。如果我们的接口方法并不要任何参数,那就可以将生命用一对空的括弧替换掉:

    () -> System.out.println("anything");

    如果我们只是内联一个lambda进去,而不去首先创建一个对象然后将其传入到saySomething方法,会如何呢:

    public static void main(String[] args) {

    LambdaDemo demo = new LambdaDemo();

    String something="I am Lambda";

    /**/

    demo.printSomething(something, toPrint -> System.out.println(toPrint));

    }

    我们的main函数体从一开始的9行代码减少到了3行。这样紧凑的代码使得lambda表达式对于Java程序员非常有吸引力。

    长沙Java培训选长沙达内,详情请登陆长沙达内Java培训官网(cs.Java.tedu.cn)!

上一篇:2017年热门编程语言排行榜,java又是第一

下一篇:达内长沙java培训详解:什么是Lambda表达式

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:5月31日

Java--零基础业余班

Java--零基础业余班

开班日期:5月31日

Java--大数据全日制班

Java--大数据全日制班

开班日期:5月31日

Java--大数据业余制班

Java--大数据业余制班

开班日期:5月31日

  • 网址:http://cs.java.tedu.cn     地址:长沙市开福区芙蓉中路一段 476 号建鸿达现代城 9 楼
  • 课程培训电话:18487146383     全国服务监督电话:400-111-8989
  • 服务邮箱 tousu@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56