java se 的简单递归有兴趣进来看看 我想知道return 1 是返回到那里
答案:3 悬赏:40 手机版
解决时间 2021-11-17 06:30
- 提问者网友:温旧梦泪无声
- 2021-11-16 12:01
java se 的简单递归有兴趣进来看看 我想知道return 1 是返回到那里
最佳答案
- 五星知识达人网友:千夜
- 2021-11-16 13:35
递归有两步骤先是递推最后是回归 递归就是调用自身
你这个是当x=1时回归
比方说第一次是x=5
if不成立
执行return 5+add(4)
第二次调用add(4)
if不成立
执行return 4+add(3).....
一直到if(x==1) 那么add(1)返回值是1
那么递归1到5的相加结果就是15
懂了吗?
而你这个题目是1到100之和追问返回到system.out.println(add(1)) ; 这里面的add(“1”)让后就结束?追答System.out.println(add(100)) ; 这里不是100吗 这个是输出add(100)返回值5050
不是执行后就从System.out.println(add(100))变成System.out.println(add(1))这里还是System.out.println(add(100))
懂了吗?
你这个是当x=1时回归
比方说第一次是x=5
if不成立
执行return 5+add(4)
第二次调用add(4)
if不成立
执行return 4+add(3).....
一直到if(x==1) 那么add(1)返回值是1
那么递归1到5的相加结果就是15
懂了吗?
而你这个题目是1到100之和追问返回到system.out.println(add(1)) ; 这里面的add(“1”)让后就结束?追答System.out.println(add(100)) ; 这里不是100吗 这个是输出add(100)返回值5050
不是执行后就从System.out.println(add(100))变成System.out.println(add(1))这里还是System.out.println(add(100))
懂了吗?
全部回答
- 1楼网友:街头电车
- 2021-11-16 14:51
谁调用add方法return的值就返回个给谁。这里当x==1的时候把1返回给System.out.println()方法。
- 2楼网友:摆渡翁
- 2021-11-16 13:56
从1加到100
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯