如何使用递归递增数字?

非我的名字

我想使用递归函数递增数字的问题。该函数未返回我所期望的值。调试后,我看到数字增加了,但是当返回值时,似乎数字调整以相反的顺序返回。

这是一个简单的示例:

private static int recursionTest(int num){
    if (num < 10){
        recursionTest(++num);
    }
    return num;
}

public static void main(String[] args) {
    System.out.println(recursionTest(1));
}

输出始终为2。当我使用逐步调试器时,看到以下内容:

  1. 每次迭代该数字增加1。
  2. 当数字达到10时,将执行return语句。
  3. 然后,调试器突出显示“ recursionTest(++ num);”。行,但数量减少了1。
  4. return语句将再次执行。
  5. 重复步骤3和4,直到最终返回值2。

为什么最后将值递减,如何返回最初计算的值?

宝宝

应该是这样的:

private static int recursionTest(int num){
    if (num < 10){
       return recursionTest(++num);
    }
    else
       return num;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用递归递增数字?

来自分类Dev

递归-递增数字并返回

来自分类Dev

递归-递增数字并返回

来自分类Dev

如何使用sed / awk / perl在文件中使用递增的字母数字值进行递归替换

来自分类Dev

如何使用iMacros递增数字?

来自分类Dev

如何使用循环在javascript中将数字递增0.01?

来自分类Dev

如何使用循环在javascript中将数字递增0.01?

来自分类Dev

如何使用递归计数数字?

来自分类Dev

如何使用递归来反转数字

来自分类Dev

通过变量递归如何返回递增指令?

来自分类Dev

使用递归的数字序列

来自分类Dev

使用递归的数字猜测

来自分类Dev

使用C#,如何使用循环在MS Access数据库中插入递增数字?

来自分类Dev

如何更改数字的递增序列?

来自分类Dev

递增数字后如何添加字母?

来自分类Dev

如何使用递归计算数组中数字的实例?

来自分类Dev

如何使用递归方法查找所有可能的数字

来自分类Dev

使用sed语法递增数字和计数

来自分类Dev

如何使用python函数使用输入来循环数字和递增或递减第三个数字

来自分类Dev

如何对数据库中的字母数字值使用自动递增

来自分类Dev

如何使用“:”和文件名中的递增数字复制和重命名文件

来自分类Dev

如何对数据库中的字母数字值使用自动递增

来自分类Dev

Java的数字递归如何工作?

来自分类Dev

如何使用sql递增字段?

来自分类Dev

如何使用xslt递增值

来自分类Dev

使用递归排列数字的ArrayList

来自分类Dev

使用递归将数字相乘

来自分类Dev

使用递归Java的数字总和

来自分类Dev

使用递归排列数字的ArrayList