在方法中传递的 Lambda表达式具有功能接口类型的参数。如果我们需要传递lambda表达式作为参数,则接收lambda表达式参数的参数类型必须是功能接口类型。
在下面的示例中,可以在参数类型为“ TestInterface ”的方法中传递lambda表达式。
interface TestInterface { boolean test(int a); } class Test { //lambda表达式 can be passed as first argument in the check() method static boolean check(TestInterface ti, int b) { return ti.test(b); } } public class LambdaExpressionPassMethodTest { public static void main(String arg[]) { //lambda表达式 boolean result = Test.check((x) -> (x%2) == 0, 10); System.out.println("The result is: "+ result); } }
输出结果
The result is: true