1. 什么是Lambda表达式?
Lambda表达式就是可以把函数作为参数传递,或者说把代码作为数据传递给函数。
2. Lambda表达式的语法格式
基本语法格式如下:
基本语法下多个变体的说明:
1). 多个参数中间用逗号分隔:
1 (int m,int n)=>{ int result=m*n; Console.WriteLine(result);}
2). 参数类型可以省略:
1 (m,n)=>{ int result=m*n; Console.WriteLine(result);}
3). 只要一个参数的时候可以省略类型并且不使用圆括号():
1 p->{System.out.println(p);}
4). 没有参数的时候只保留圆括号()
1 ()->{System.out.println();}
5).代码块只有一行的时候可以省略大括号{}
1 p->System.out.println(p);
6). 代码块只有一行的时候,Java运行时会检测语句,并返回相关的类型:
1 p->{2 p.getGender == Person.Sex.MALE && p.getAge >= 18;3 }
等同于:
1 p->{2 return p.getGender == Person.Sex.MALE && p.getAge() >= 18;3 }