Java8 详解之 lambda 表达式

1. Java8 之 lambda 表达式
2. lambda 表达式的语法
3. lambda 表达式举例
4. 行为参数化
5. 匿名内部类
6. 小结

操作方法

  • 01

    Java8 之 lambda 表达式: Java8 中引入了 lambda 表达式,从行为参数化的角度,在使用时,将行为作为参数,去除包围在外层的不必要的类声明,使代码更加简洁。 lambda 表达式的语法: lambda 表达式由参数,->,以及函数体三部分组成。其实函数体可以是表达式,也可以是语句。语句应该包含在{} 里,而表达式不能。 lambda 表达式举例:

  • 02

    行为参数化: 定义了一个 Comparator 接口,并且定义了 compare 方法。List 类型的 inventory,定义了 sort 方法,该方法以 Comparator 作为参数。在使用时,生成一个匿名或不匿名的 Comparator 对象,该对象实现了 compare 方法,指定了具体的比较行为,再将 Comparator 对象作为参数,传给 sort 方法。实际上的作用,就是将比较行为,作为参数,传给 sort 方法,这种思想和做法就叫作“行为参数化”。一个使用的方法(比如 sort 方法)可以对应多种行为,当需要更改行为时,只需要修改表示行为的代码,使用方不必做出修改,增加了代码的健壮性。

  • 03

    匿名内部类: 而像上面的例子中,直接 new 一个 Comparator 类型对象,而没有定义一个变量保存该对象的引用,叫做使用匿名内部类。在匿名内部类的情况下,由于方法不能重复使用,可以更加明显地看到代码的冗余。因为每次在使用时需要手动 new 一个对象,并且还要写出 compare 方法的签名,而真正有用的其实只是 compare 的方法体。在 Java8 中,使用 lambda 表达式,可以简化这些代码。比如上面的 sort 方法的使用,可以简化为:

  • 04

    定义线程的例子:

  • 05

    GUI 中点击事件的例子:

  • 06

    小结: 这篇文章介绍了 lambda 表达式的语法,引入 lambda 表达式的使用场景,以及使用 lambda 表达式的好处。

(0)

相关推荐

  • EditPlus中的正则表达式中英文使用详解(附常用实例)

    EditPlus中的正则表达式中英文详解(附常用实例) /t Tab character.tab符号 /n New line.新的一行(换行符) . Matches any character.任何字 ...

  • windows bat(批处理):IF详解

    windows bat(批处理)--IF详解 摘要:本文介绍了windows bat中IF语句的语法,包括3中基本形势和扩展IF语句 1. IF & IF not if 和 if not 有都 ...

  • Excel随机函数的用法详解

    EXCEL随机数指随机生成没有规律的数值,有随机小数和随机整数. RAND函数用于生成随机小数. RANDBETWEEN函数用于生成随机整数. 还可以生成时间随机数. 步骤 1.RANE函数可以生成0 ...

  • ae怎么破解?Adobe After Effects CC 2015安装+破解图文教程详解

    ae cc 2015,全称为adobe after effects cc 2015,它是adobe官方推出的最新版本的视频剪辑及设计软件,也是目前工作和生活中用于高端视频特效合成的最佳软件.新版本功能 ...

  • excel公式函数详解:[4]sum函数介绍

    我们在处理表格的时候经常需要对某区域的数值进行求和,这就是sum函数的应用.此函数简单易学,应用却是非常的广泛.学好这函数还是有一些注意事项需要掌握的,接下来小编就在此和大家分享一下我自认对这个函数的 ...

  • 安卓4.0和2.3的区别在哪里?图文详解

    安卓4.0推出已经有一段时间 但对于想升级4.0的朋友来说 4.0区别自己以前2.3的差异在哪里? 到底自己要不要升级4.0了? 下面就来看看4.0有什么区别 相比2.3,安卓4.0在系统上的9大改进 ...

  • adb.exe是什么进程 adb.exe命令详解

    ADB全称Android Debug Bridge, 是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备(如G1手机). 它的主要功能有 ...

  • DiskAid怎么安装使用?iOS神器DiskAid图文注册使用教程详解

    虽然苹果系统相对安卓来说比较封闭一些,但自从小编发现一款名为DiskAid的软件之后,感觉这是要让iOS散发第二春啊!轻松让iOS设备无需连接数据线的情况下在Wifi环境下进行管理,还能让我们闲置的内 ...

  • 微话一键拨号功能设置方法图文详解

    《微话》是一款功能强大的智能拨号软件(点击下载),本文小编主要给大家讲解一下微话一键拨号设置方法详解,不懂的朋友可以一起来了解下吧! 1)首先,进入【更多】界面,然后点击【通用设置】,在【通用设置】界 ...