run方法里的i是一个局部变量,每循环一次把i作为实参传给Factorial( int n ) 的形参n,执行一次Factorial( int n ) 方法。
i=0:把0作为参数调用Factorial()方法。
在Factorial(0)方法中,进入for循环,因为i=1,不满足i<=n的条件,所以result=1。程序输出1 != 1。
i=1:把1作为参数调用Factorial()方法。
在Factorial(1)方法中,进入for循环,因为i=1,满足i<=n的条件,result=1*1;i++,i变成了2,判断i<=n,不满足条件,返回result=1。程序输出1 != 1。
i=2:把2作为参数调用Factorial()方法。
在Factorial(2)方法中,进入for循环,因为i=1,满足i<=n的条件,result=1*1;i++,i变成了2,判断i<=n,满足条件,result=(1*1)*1;i++,i变成了3,判断i<n,不满足条件。返回result=1。程序输出1 != 1。
...... |