我正在处理的代码涉及一群在画布上快速移动的鸟类。我需要做的是使用System.currentTimeMillis()
方法减慢鸟类在屏幕上刷新的速度。我需要在while循环中使用它,以便它等待20毫秒才能使鸟再次移动。我不太清楚如何做到这一点。
以下是当前代码:
while(NeWorld.isAlive())
{
NeWorld.updateWorld();
}
NewWorld.isAlive
允许鸟类移动,NeWorld.updateWorld()
刷新它。它刷新太快,我需要使用System.currentTimeMillis()
方法减慢速度,以便它每20毫秒刷新一次。
答案 0 :(得分:0)
如果将updateWorld()
逻辑放在单独的函数中,则可以按一定的时间间隔调用它。这是一个例子。
boolean iShouldStillUpdateWorld = true;
while (iShouldStillUpdateWorld) {
if (System.currentTimeMillis() % 20 == 0) {
updateWorld();
}
iShouldStillUpdateWorld = checkIfIShouldUpdateWorld();
}
这只是一个循环并检查是否已经过了20毫秒。如果是这样,它会调用您的updateWorld()
函数,然后检查它是否应该继续重复此过程。