我正在创建一个简单的加油站模拟作为家庭作业。模拟的总持续时间是一周。根据燃料类型,加注汽车大约需要3分钟。汽车可能被收集在队列中。现在的问题。我知道如何实现这些方法,但不知道如何在没有像Thread.sleep()
这样的方法的情况下模拟一段时间。
P.S。我正在使用JavaFX框架来完成这项任务。汽车通过javafx.scene.shape.Rectangle
方法表示为Tranlsate
及其移动。掌柜也是。
答案 0 :(得分:1)
def all_extreme(x):
return all('!' in word for word in x)
方法接受毫秒值。基本上,您可以运行更新,然后计算在下次更新之前需要睡多长时间。
您可以使用Thread.sleep()
来衡量已过去的实时时间。确保您的课程System.nanoTime()
。在run方法中,粘贴一个包含implements Runnable
方法的while循环来更新汽车。在循环的开始和结束时获取纳秒时间,减去两个给出经过时间的时间。减去每次更新所需的时间,然后休眠线程。我认为这就是你所需要的一切。
以下是代码:
update()
答案 1 :(得分:0)
在JavaFX框架内,
您只需使用PauseTransition来模拟定期时间流逝。在每个时期结束时更新场景图元素'状态。如果您要更改某个节点的某些属性并执行各种动画,则可以使用其他types of Transitions。要获得更精细的控制,您可以将Timeline与KeyFrame s一起使用。