我刚刚开始编写递归方法。我的十次方方法之一是给我一个缺少的返回类型错误。
public static double powerOfTen(int n)
{
if (n == 0)
return 1;
if(n > 0)
return (10 * powerOfTen(n - 1));
if(n < 0)
return (1 / powerOfTen(n - 1));
}
我很新,所以任何解释将不胜感激。
//////
编辑
这对我来说是可行的,具有十个负和正的幂。谢谢您的帮助:D
public static double powerOfTen(int n)
{
if(n > 0)
return (10 * powerOfTen(n - 1));
if(n < 0)
return (1 / powerOfTen( (-1)*(n) ));
return 1;
}
最佳答案
尝试:
public static double powerOfTen(int n)
{
if(n > 0)
return (10 * powerOfTen(n - 1));
if(n < 0)
return (1 / powerOfTen(n - 1));
return 1;
}
编译器认为它不能保证总是有返回值,因为所有返回值都在
if
语句中。这样做可以消除困惑关于java - 缺少返回语句错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16351562/