-3

请看下面的代码:

    public static void main(String[] args) {
    int x = 7;
    for (int i = 0; i < 5; i++){
        int j = x - i;
        if (j % 3 == 0) {
            System.out.println("i: " + i + ",j:" + j);
        } else {
            i++;
        }
    }
}

当我运行它时,它只打印 i:4,j:3,但我认为应该还有 i:1,j:6。

4

2 回答 2

7
i++;

i在每次迭代中递增两次,这意味着i只有偶数值。

于 2013-08-27T13:47:47.597 回答
0

它永远不会打印 i=6,因为 i 取值介于 0 和 4 之间。关于 j,它取值从 7 到 3。

如果你只是说想要你想要完成,那就更好了,我们从那里开始。

顺便说一句,您应该考虑遵循最佳实践。这段代码非常丑陋。

于 2013-08-27T13:49:57.937 回答