跳到主要内容

Lambda 表达式

Lambda 表达式是一个 Java 8 以后开始支持的一个非常优雅的新特性,本小节我们将学习什么是 Lambda 表达式,为什么需要 Lambda 表达式,Lambda 表达式的基础语法,以及 Lambda 表达式的实际应用等内容。

1. 什么是 Lambda 表达式

Lambda 表达式基于数学中的 λ 演算得名,直接对应于其中的 lambda 抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。

Lambda 表达式是一个匿名函数,匿名函数由 LISP 语言在 1958 年首先采用,此后,越来越多的编程语言开始陆续采用。

我们可以把 Lambda 表达式理解为是一段可传递的代码(将代码像数据一样传递)。使用它可以写出简洁、灵活的代码。作为一种更紧凑的代码风格,使 Java 语言的表达能力得到了提升。

2. 为什么需要 Lambda 表达式

在 Java 8 之前,编写一个匿名内部类的代码很冗长、可读性很差,请查看如下实例: