本文主要讲解Lambda表达式的相关知识
一.Lambda简介
- 面向对象编程思想
做一件事,找一个能解决这个事情的的对象,调用该方法,完成这件事情,注重的是过程. - 函数式编程思想
做一件事,不在乎具体是谁做的,怎么做的,注重的是结果.
Lambda表达式则是函数式编程思想,这是Java8出现的新特性,主要是为了简化代码.
二.Lambda表达式的格式
Lambda格式由3个部分组成:
- 一些参数
- 一个箭头
- 一段代码
Lambda表达式为:
|
|
注: 小括号内的语法与传统方法参数列表一致:无参数则留空,多个参数则用逗号分隔. ‐> 是新引入的语法格式,代表指向动作,大括号内的语法与传统方法体要求基本一致.
1.Lambda格式(无参无返回值
)
|
|
2.Lambda格式(有参有返回值
)
|
|
3.Lambda格式(省略
)
|
|
注:省略了大括号
二.Lambda例子
1.无参无返回值
启用一个线程,采用匿名内部类的方式,一条打印输出的语句
|
|
以上线程重点在于打印输出的语句,所以可以简化代码为:
|
|
分析:简化后的代码
中->
左侧的()
中的参数为简化前的代码
中run()
的参数,简化后的代码
中->
右侧的大括号对应简化前的代码
中run()
右侧的大括号,Lambda表达式在一定程度上使代码更精简,更美观
注:例子1就是无参无返回值的例子
2.有参有返回值
定义一个list数组,添加两个map
|
|
按照年龄从小到大排序
|
|
3.省略格式
继续引用第一个例子,还可以简化为以下格式
|
|
注:唯一的区别是去掉了,大括号{}
和大括号中打印语句后的封号;