Java Lambda – Java递归Lambda
我们可以在创建递归lambda表达式时使用方法引用。
例子
以下代码以正常方式创建递归函数,然后使用递归函数作为方法引用来创建lambda表达式。最后的lambda表达式成为递归。
import java.util.function.IntFunction; public class Main { public static void main(String[] args) { IntFunction<Long> factorialCalc = Main::factorial; System.out.println(factorialCalc.apply(10)); } public static long factorial(int n) { if (n == 0) { return 1; } else { return n * factorial(n - 1); } } }
上面的代码生成以下结果。