lambda表达式的语法
一.lambda表达式的基础语法
首先我们要知道,lambda表达式的本质是什么,lambda表达式的本质是一个匿名函数(不关心方法名的函数),所以我们在写lambda表达式的过程中也就不需要关心我们函数的返回类型是什么。
我们需要的关心内容:参数列表和方法体!!!!
复制代码
1
2
3
4
5//lambda表达式的基础语法,我们需要注意大括号的后面有一个分号! (参数)->{ 方法体 };
举一个lambda表达式实现抽象方法的例子:
复制代码
1
2
3
4
5
6
7
8
9
10
11interface SayHilnterface{ String say(); } public class Demo{ public static void main(String[] args){ //lambda 表达式实现抽象接口 SayHilnterface pi=()->"你好啊,这里是lambda表达式“, System.out.println(pi.say()); } }
二.lambda表达式的进阶
2.1 lambda表达式调用变量
2.1.1 lambda表达式无法更改所在函数体中的局部变量
如下所示:
复制代码
1
2
3
4
5
6
7
8
9
10
11public class Demo1{ public static void main(String[]args){ //定义局部变量 int value=100; VariableInterface1 v=()->{ int num=value-10; value=50; }; } }
程序报错:不能修改局部变量value的值!
2.1.2 lambda表达式更改类成员变量
还是刚才的那段代码,只要如此修改:
复制代码
1
2
3
4
5
6
7
8
9
10
11public class Demo1{ //定义类成员变量 int value=100; public static void main(String[]args){ VariableInterface1 v=()->{ int num=value-10; value=50; }; } }
就可以输出想要的结果。
2.2 lambda表达式的一些简略形式
2.2.1 参数类型的省略
复制代码
1
2
3
4
5//int在这里可以省略 (int a,int b)->{ 方法体 };
2.2.2 单一参数小括号的省略
复制代码
1
2
3
4
5//极简省略 a->{ 方法体 };
2.2.3 单一语句的大括号省略
复制代码
1
2
3
4
5//如果是普通的单一语句 (参数)->System.out.println(***); //如果单一语句式return返回,不可以写return a->a*a;
掌握了以上的基本和进阶的表达方式,我们下一步将要讨论如何进行lambda表达式方法的引用。
最后
以上就是动听招牌最近收集整理的关于lambda表达式的语法lambda表达式的语法的全部内容,更多相关lambda表达式内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复