> 自然
java中用递归方法求阶乘(java的阶乘的递归算法)
导语:Java中方法的递归调用与讲解(用阶乘对别示例)
1、什么是递归?
方法自身调用自身,模板:
aa(){
aa();
}
下图简单示例:
2、递归是很耗费栈内存的,递归算法可以不用的时候尽量别用。
3、程序运行的时候发生了这样的一个错误【不是异常,是错误Error】 ;
java . lang.stackoverflowError
栈内存溢出错误。错误发生无法挽回,只有一个结果,就是JVM停止工作。
4、递归必须有结束条件,没有结束条件一定会发生栈内存溢出错误。
5、递归即使有了结束条件,即使结束条件是正确的,也可能会发生栈内存溢出钳误,因为 递归的太深了。
6.递归原理:
最先调用的main方法在栈底,最后结束;最后调用的方法在栈顶,最先结束。
原理图:
7.1 1~n求和示例:
普通求和方式
递归求和方式,与讲解。(紧记一个作为例子)
7.2 阶乘示例:
不是使用递归计算10的阶乘
使用递归计算10的阶乘,原理相同。
本文内容由小舻整理编辑!