【发布时间】:2015-10-05 16:24:44
【问题描述】:
import java.util.function.Function;
public class LambdaExpression {
@SuppressWarnings("rawtypes")
public static Function create(int addTo){
int n = 1;
Function<Integer, Integer> f = addT -> addTo + n;
return f;
}
public static void main(String[] args){
System.out.println(LambdaExpression.create(5));
}
}
在运行时给我这个错误:
LambdaExpression$$Lambda$1/424058530@1c20c684
【问题讨论】:
-
是什么让您认为这是一个错误?您创建了一个
Function,并尝试打印函数本身,隐式调用toString()...这给了您一个相对不可读(但不是不正确)的字符串值。 -
这是错误还是只是程序的输出?
-
我的程序的输出
-
程序应该给每个输入加 1
-
你可能打算使用
LambdaExpression.create(5).apply(6)。
标签: java lambda java-8 expression