Lambda表达式的语法一般如下:
(参数列表) -> (函数体)
它包含:
1、参数列表:Lambda表达式的输入参数,可以为空。比如:
() -> (函数体):无参数
(x) -> (函数体):一个参数x
(x, y) -> (函数体):两个参数x和y
箭头:->,将参数列表和函数体分隔。
2、函数体:Lambda表达式的主体,可以包含多个表达式和语句。如果只有一条语句,可以省略大括号{}。比如:
() -> {执行操作1;执行操作2;}
x -> x + 1
举几个例子
Java:
// 无参数,无返回值
() -> System.out.println("Hello")
// 有一个参数
x -> x + 1
// 有两个参数,有返回值
(x, y) -> { return x + y; }
// 有两个参数,执行一条语句
(x, y) -> x + y
C#:
// 无参数,无返回值
() => Console.WriteLine("Hello")
// 一个参数
x => x + 1
// 两个参数,有返回值
(x, y) => { return x + y; }
// 两个参数,一条语句
(x, y) => x + y
Python:
# 无参数
lambda: print("Hello")
# 一个参数
lambda x: x + 1
# 两个参数
lambda x, y: x + y