public int Sum(int x) {
return x>1?(Sum(x-1)+1)*2:x;
}
调用System.out.print(Sum(3));输出 22
哪里调用返回哪里
当x=1的时候return 1;
1 (1+1)*2 返回4 第一次
4 (4+1)*2 返回10 第二次
10 (10+1)*2 返回22 第三次
貌似这样解释只有自己看得懂。。
public int Sum(int x) {
return x>1?(Sum(x-1)+1)*2:x;
}
调用System.out.print(Sum(3));输出 22
哪里调用返回哪里
当x=1的时候return 1;
1 (1+1)*2 返回4 第一次
4 (4+1)*2 返回10 第二次
10 (10+1)*2 返回22 第三次
貌似这样解释只有自己看得懂。。
转载于:https://www.cnblogs.com/-gap/archive/2012/06/20/2556044.html