点击查看:2015计算机等级考试二级Java入门教程章节汇总
点击查看:2015计算机等级考试二级Java入门教程第五章汇总
5.8 递归
迄今为止你所看到的这些方法都可以调用其他的方法,然而一个方法也可以调用它自己,我们把这种调用称作递归(recursion).很明显。你一定要在递归方法中包括一些逻辑判断,这样才能够在最后停止调用它自己。我们将用一个简单的例子来介绍它的实现过程。
我们可以编写一个方法来计算一个变量的整数幂,也就是计算x的n次方或者x*x*…*x,即x乘以它自身n次。我们可以应用这样一个算式得到结果,即x的n次方等于x的(n-1)次方乘以x.
试试看--计算幂
这里有一个包含递归方法power()的完整程序:
public class PowerCalc
{
public static void main(string [] arga)
{
double x=5.0
system.out.println(x+ to the power 4 is + power(x,4);
system.out.println(7.5 to the power 5 is # power(7.5,5));
system.out.println(7.5 to the power 0 is # power(7.5,0));
system.out.println(10 to the power -2 is # power(10,-2));
)
//Raise x to the power n
static double power(double x,int n)
{
it(n>1)
return x*power(x,n=1); //Recersive call
else if (n<0)
return 1.0/power(x,n); //Negative Dower of x
else
return n==0 ? 1.0 :x; //when n is return 1. otherwise x
}
}
这个程序将产生的输出结果为:
5.0 to the power 4 is 625.0
7.5 to the power 5 is 23730.46875
7.5 to the power 0is 1.0
10 to the power -2 is 0.01
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |