我正在为Java 8中提供的IntFunction
包中的java.util.function
创建一个Lambda表达式。
当我写下面的表达时,它的工作正常:
int i = 10;
IntFunction<Employee> intFunction = (i) -> new Employee(i, "name");
但是当我写下面的表达式时,它显示编译时错误Type mismatch: cannot convert from int to IntFunction<Employee>
:
IntFunction<Employee> intFunction = (10) -> new Employee(10, "name");
是否有必要将声明的变量作为输入传递给Lambda Expression。我们不能直接传递Lambda Expression所期望的类型的值吗?