您现在的位置是:课程教程文章
Java中Lambda的使用范围
2023-12-14 22:11课程教程文章 人已围观
-
Java基础零基础入门到精通SE直播课程jav
Java基础零基础入门到精通SE直播课程jav下单前请加老师微信,不联系,不提供软件,不提供课件,不提供代码,不提供... -
javajava视频教程java学编程课程
javajava视频教程java学编程课程咨询微信:adam8831 下单前请加老师微信,不联系,不提供软件,不提供课件,不... -
软件测试之Java高级软件测试开发第5期【
软件测试之Java高级软件测试开发第5期【... -
java swing坦克大战游戏,解锁swing技术新姿势
java swing坦克大战游戏,解锁swing技术新姿势除了可以巩固swing必备的基础之外,另涉及swing绘图技术、多线程操作、线程安...
在之前的学习中,我们已经对Lambda表达式有所接触,并进行了相关的操作。那么在具体的使用过程上,我们需要明确其具体的使用范围。本篇将以三种访问类型为例,局部变量、成员变量和静态变量,并为大家讲解不同访问情景下,Lambda表达式的不同操作,下面一起来看具体内容。
1、访问局部变量
可以访问lambda表达式外部的final局部变量:
final int num = 1; Converter<Integer, String> stringConverter = (from) -> String.valueOf(from + num); stringConverter.convert(2); // 3
但是与匿名对象不同的是,变量num并不需要一定是final。在lambda表达式内部企图改变num的值也是不允许的。
2、访问成员变量和静态变量
与局部变量不同,我们在lambda表达式的内部能获取到对成员变量或静态变量的读写权。这种访问行为在匿名对象里是非常典型的。
class Lambda4 { static int outerStaticNum; int outerNum; void testScopes() { Converter<Integer, String> stringConverter1 = (from) -> { outerNum = 23; return String.valueOf(from); }; Converter<Integer, String> stringConverter2 = (from) -> { outerStaticNum = 72; return String.valueOf(from); }; } }
以上就是Java中Lambda的使用范围,大家可以就具体的使用场景,先进行说明方面的理解,然后再运行实例代码部分。更多Java学习指路:Java基础
课程教程:Java中Lambda的使用范围下一篇:没有了