有没有办法控制循环的执行速度? 我有一个以30000步循环运行的模拟。我想想象一下在那个循环中发生的事情,如果可能的话,在运行时控制执行的速度。任何想法我怎么能这样做?
答案 0 :(得分:6)
您可以在循环中添加sleep
以暂停每次迭代。
更好的问题是,你是如何形象化的?我猜你正在通过控制台观看文本闪存......如果是这种情况你可能会考虑输出到文件而不是屏幕。通过这种方式,您可以在闲暇时阅读输出,而无需在程序中添加人为减速。
...但是如果通过“可视化”它是一个真正的GUI事物,那么,睡眠可能会更好。
答案 1 :(得分:5)
在循环中放入Thread.sleep()
语句。请注意,你必须处理异常。
for(int i = 0; i < 30000; i++) {
...
try {
Thread.sleep(100);
}
catch(InterruptedException e) {
// do something with e
}
}
答案 2 :(得分:1)
你可以放入你的循环Thread.sleep(latency);
,其中延迟是毫秒。
答案 3 :(得分:0)
你可以试着像其他人说的那样使用'Thread.sleep()'。但要“知道”循环中发生了什么,我认为你最好调试它。我认为最坏的情况是在屏幕上打印所有东西(在循环外不会那么糟糕,但考虑到50多个循环,它变得不切实际。