java基础知识——22.lambda表达式

这篇文章,我们来讲一下java的lambda表达式

目录

1.初识lambda表达式

2.lambda表达式介绍

2.1 函数式编程

2.2 lambda表达式的具体格式

2.3 Lambda表达式的好处

2.4 Lambda的省略写法


1.初识lambda表达式

首先,我们来看一下lambda表达式的应用

下面,我们通过具体实例来看一下

这是一个排序的方法,运用了匿名内部类

这个方法的书写比较麻烦,下面我们用lambda表达式来对这个方法进行修改:

 

其中第10——第13行就是lambda表达式的书写。可以看出来,比上面的要简单多

这样,我们就初步认识了lambda表达式

2.lambda表达式介绍

在介绍lambda表达式之前,我们先来介绍一下函数式编程

2.1 函数式编程

函数式编程(Functional programming)是一种思想特点

函数式编程思想,忽略面向对象的复杂语法,强调做什么,而不是谁去做

我们要学习的lambda表达式就是函数式思想的体现。

下面用上面的代码来看一下:

 这就是函数式编程

2.2 lambda表达式的具体格式

Lambda表达式是JDK8以后的一种新语法格式

下面,我们来看一下lambda表达式的格式:

()->{

}

注意:

  • ( )里面放具体的形参
  • ->是固定格式
  • { }里面放方法的具体内容

下面,可以来看一下具体的演示:

Lambda表达式的注意事项:

  • Lambda表达式可以用来简化匿名内部类的书写
  • Lambda表达式只能简化函数式接口的匿名内部类的写法
  • 函数式接口:有且仅有一个抽象方法的接口叫做函数式接口,接口上方可以加@FunctionalInterface注解

 下面来看一下另一个案例:

2.3 Lambda表达式的好处

Lambda是一个匿名函数,我们可以把Lambda表达式理解为一段可以传递的代码,它可以写出更简洁、更灵活的代码,作为一种更紧凑的代码风格,使java语言表达能力得到提升

2.4 Lambda的省略写法

下面,我们来看一下Lambda的省略写法

省略的核心思想:可推导,可省略(意思是只要是可以推导出来的,都是可以省略的)

Lambda表达式的省略规则:

  • 参数类型可以省略不写
  • 如果只有一个参数,参数类型可以省略,同时( )也可以省略
  • 如果Lambda表达式的方法体只有一行,大括号,分号,return都可以省略不写,并且必须同时省略

下面,我们来看一下实例:

这就是按省略规则写出来的Lambda表达式

其实,我们还是老老实实的写匿名内部类比较好,虽然Lambda表达式写起来方便,但是可读性不强,并且新手不易看懂,所以还是推荐使用匿名内部类

这里讲解Lambda表达式也只是让大家了解,会用,遇见了知道是什么意思就行。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

L纸鸢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值