0

我的讲义中有以下示例代码。

int[] a = new int[3]; 
a[0] = 1;
for (int i = 1; i < a.length; i++) {    
    a[i] = a[i-1] + i;
}

我假设这会回来

[1,2,3] 

运行以下代码后。

因为循环从 开始1并计数到3。当第一个循环被执行时,我被分配为1and[1-1]+1并且结果是1并且下一个i变成2并且结果是2.....

我不认为a[0]=1; 是在做什么。但我不确定这是否正确。

请告诉我我的假设是否正确?

4

1 回答 1

5

好吧,不完全是:

i   |   a[i-1]    | a[i] = a[i-1] + i
----+-------------+------------------
1   |  a[0] = 1   | a[1] = 1 + 1 = 2
2   |  a[1] = 2   | a[2] = 2 + 2 = 4
于 2012-10-31T14:10:18.757 回答