java Lambda访问变量
1、lambda表达式可访问外部本地final变量
代码语言:javascript复制final int num = 1;
Converter<Integer, String> stringConverter =
(from) -> String.valueOf(from num);
stringConverter.convert(2); // 3
2、与访问本地变量相反,成员变量和静态变量可以通过lambda表达式读写。这种访问变量的方式也实现在匿名变量中:
代码语言:javascript复制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访问变量的方法,希望对大家有所帮助。