使用lambda写一个阶乘函数
时间: 2024-10-17 14:15:14 浏览: 29
详解Python的Lambda函数与排序
在Java中,你可以使用Lambda表达式简洁地定义一个阶乘计算函数。阶乘是一个数的所有小于及等于它的正整数的积,通常用于数学和算法中。以下是使用Lambda表达式的例子:
```java
import java.util.function.LongFunction;
public class Main {
public static void main(String[] args) {
LongFunction<Long> factorial = n -> {
if (n == 0 || n == 1) {
return 1;
} else {
return n * factorial.apply(n - 1);
}
};
long num = 5; // 示例输入
long result = factorial.apply(num);
System.out.printf("The factorial of %d is %d%n", num, result);
}
}
```
这里定义了一个`LongFunction`类型的Lambda表达式,它接受一个`long`类型的参数并返回另一个`long`值。当调用`factorial.apply(num)`时,会递归计算阶乘。
阅读全文