为什么此代码显示输出17而不是16?

时间:2015-04-20 12:44:09

标签: java arrays loops

请尽可能逐步解释

package array;

public class array3 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int result = 0;
        for (int i = 0; i < 5; i++) {
            if (i == 3) { 
                result += 10;
            } else {
                result += i;
            }   
        }
        System.out.print(result);       
    }
}

2 个答案:

答案 0 :(得分:2)

i循环从0到4

+--------+-------------+
|   i    |   result    |
+--------+-------------+
|   0    |    0        |
|   1    | 0 + 1  = 1  |
|   2    | 1 + 2  = 3  |
|   3    | 3 + 10 = 13 |
|   4    | 13 + 4 = 17 |
+--------+-------------+

这就是你如何得到17

答案 1 :(得分:0)

您的代码会增加(添加)&#39; i&#39;您当前iterration的索引变量(类型整数)到&#39;结果&#39;变量(也是类型整数)。只有当i == 3时,结果=结果+ 10,否则结果=结果+ i。希望这澄清。