所以我正在阅读教科书上对递归的解释,我感到很困惑。这是他们使用的示例。
public static void message(int n){
if (n > 0){
{
System.out.println("This is a recursive method");
message(n-1);
}
}
}
然后他们创建一个 main 方法,当 n=5 时调用上面的 message 方法,并解释该方法被调用 6 次。该方法调用自身 5 次,因此递归深度为 5。我没有得到的是:“因为在方法调用之后没有更多的语句要执行,所以该方法的第五个实例将程序的控制权返回到第四个实例。这会重复,直到该方法的所有实例都返回。”
方法返回是什么意思?
最佳答案
表示方法结束。由于该方法是void,所以没有实际的结果返回,但你可以这样写。
public static void message(int n){
if (n > 0){
{
System.out.println("This is a recursive method");
message(n-1);
}
}
return;
}
关于java - 对Java教材中的递归解释感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30386812/