对于两个值独立变化的循环

时间:2014-12-08 10:29:20

标签: java for-loop int

我想在java中编写一个for循环,我给出了两个整数的初始值,循环增加了它们彼此独立。为了证明我的意思,我将展示我已经尝试过的代码:

for (int i=0; i<(4);i++){
     for(int y=0; y<(4);y++){
         if(array[i].isNext(array[y])){
             return true;
    }
}

我想要做的是比较每一个可能的&#39; i&#39;尽可能的&#39; y&#39;。

这意味着当i =0时,它会在y值增加之前与y值进行比较:0,1,2,3。

我知道我的代码完全错误,并且我的示例中的两个值同时增加,我想知道是否有人有任何见解。

似乎我的问题出现在我的代码的其他地方,感谢您的建议!

1 个答案:

答案 0 :(得分:1)

你所拥有的是一个嵌套循环。如果您遵循它,您将看到它工作正常。 (至少你描述问题的方式。)

for(i = 0)     //
    for(y = 0) // (0, 0)
    for(y = 1) // (0, 1)
    for(y = 2) // (0, 2)
    for(y = 3) // (0, 3)
for(i = 1)     //
    for(y = 0) // (1, 0)
    for(y = 1) // (1, 1)
    for(y = 2) // (1, 2)
    for(y = 3) // (1, 3)
for(i = 2)     //
    for(y = 0) // (2, 0)
    for(y = 1) // (2, 1)
    for(y = 2) // (2, 2)
    for(y = 3) // (2, 3)
for(i = 3)     //
    for(y = 0) // (3, 0)
    for(y = 1) // (3, 1)
    for(y = 2) // (3, 2)
    for(y = 3) // (3, 3)

y的每个值都会循环显示i的每个值。

同时循环将是,例如:

for(int i = 0, y = 0; i < 4 && y < 4; i++, y++) {...}

你得到了

for(i = 0, y = 0)
for(i = 1, y = 1)
for(i = 2, y = 2)
for(i = 3, y = 3)