我如何在for循环中有一个数组,该数组实际上在每次运行时都会改变for循环的大小?

时间:2019-03-24 00:05:40

标签: java

我希望我的for循环的长度可以更改数字。我可以这样做吗?

我还没有尝试过任何东西

for (int i=0; i < colsAdd[i] ; i++){            
   System.out.print("     0.0");    
}

实际上colsAdd[0]是唯一的大小。

1 个答案:

答案 0 :(得分:2)

我不确定我是否完全了解您的要求,但是您似乎想知道允许将哪些内容放入for循环的不同部分,以及它们的运行顺序。 / p>

如果我们更改您上面粘贴的代码以匹配下图,则规则将变得显而易见。

for (initialization; condition; updateCounter){            
   codeInsideLoop    
}

for loop flow chart

任何代码都可以进入for循环的那些部分,甚至可以留空!例如,以下代码等效于while(true)循环。

for (;true;){            
   System.out.print("This will run forever!");    
}

或者这个for循环在循环内部递增。

for (int i=0; i < 10;){            
   System.out.print("This will print 10 times");  
   i++;
}

更符合您的问题,此代码在每次迭代时调用一个函数,以查看是否应继续循环。该函数可以使用任何逻辑来返回布尔值。无论如何,它将在每个单循环结束时执行。

for (int i=0; keepLooping(i); i++){            
   System.out.print("This will print 10 times");  
   i++;
}

现在,仅仅因为您可以做这些事情并不意味着您应该这样做!通常,您希望保持循环的结构简单,以便每个人都可以了解您的目标是什么。