Java递归基础案例——阶乘
【摘要】
阶乘的案例非常的小所以更好理解。
package Action; public class test { public static void main(String[] args) { //计算10的阶乘 //这次由于只要最终结果,故而直接调用输出即可 //无论多少次循环, 最终值有一个返回值 System.out.prin...
阶乘的案例非常的小所以更好理解。
-
package Action;
-
-
public class test {
-
public static void main(String[] args) {
-
//计算10的阶乘
-
//这次由于只要最终结果,故而直接调用输出即可
-
//无论多少次循环, 最终值有一个返回值
-
System.out.println(f(10));;
-
}
-
-
public static long f(int n) {
-
if (n == 1) { // 递归终止条件
-
return 1; // 由于是递归,故而1的时候就结束了
-
}
-
return n * f(n - 1); // 相同重复逻辑,缩小问题的规模
-
}
-
}
输出数据
3628800
正确。
那么换个方法测试一下:
-
package Action;
-
-
public class test {
-
public static void main(String[] args) {
-
int sum=1;//从1开始计算,如果是0那就结束了
-
//循环10次,不能从0开始,所以i<=10
-
for (int i = 1; i <= 10; i++) {
-
sum*=i;//累计就行了
-
}
-
System.out.println(sum);
-
}
-
}
输出结果
3628800
二次校验,正确。
希望此案例能让大家更加加深一步对递归的理解。
文章来源: laoshifu.blog.csdn.net,作者:红目香薰,版权归原作者所有,如需转载,请联系作者。
原文链接:laoshifu.blog.csdn.net/article/details/122793734
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)