如何在Java中检查变量的增长率?

如何在Java中检查变量的增长率?,java,processing,physics,Java,Processing,Physics,我试图获得Java中变量的变化率(增加或减少) 例如,我有一个处理程序,可以根据重力和按住鼠标按钮的时间改变对象的速度 我想得到最后5秒速度变量的变化率。 然后检查其下降是否太慢 如果它太低,重力应该增加,使它下降得更快。 否则,重力也应增加以降低速度 如何检查对象的位置?堆栈溢出并不是专门为一般的“我该怎么做”类型问题设计的。这是针对特定的“我尝试了X,期望是Y,但得到了Z”类型的问题。但我会尽力在一般意义上提供帮助 没有一个神奇的开箱即用的解决方案 没有电脑,只有一张纸和一支铅笔,你会怎么做

我试图获得Java中变量的变化率(增加或减少)

例如,我有一个处理程序,可以根据重力和按住鼠标按钮的时间改变对象的速度

我想得到最后5秒速度变量的变化率。 然后检查其下降是否太慢

如果它太低,重力应该增加,使它下降得更快。 否则,重力也应增加以降低速度


如何检查对象的位置?

堆栈溢出并不是专门为一般的“我该怎么做”类型问题设计的。这是针对特定的“我尝试了X,期望是Y,但得到了Z”类型的问题。但我会尽力在一般意义上提供帮助

没有一个神奇的开箱即用的解决方案

没有电脑,只有一张纸和一支铅笔,你会怎么做?用英语写下说明,你可以按照说明计算变量的变化率

一种解决方案可能是将最后的X值添加到数组或ArrayList中,然后使用该值计算其变化量。或者只存储X帧前的值,然后将其与当前值进行比较


关键是,实现这一点的方法不止一种。

java.awt.event.MouseEvent在按下鼠标和释放鼠标时都会触发。当MouseEvent扩展InputEvent时,getWhen()方法以毫秒为单位提供系统时间,更多的MouseEvent具有获取鼠标位置的方法。因此,注册一个鼠标侦听器,它会记住鼠标按下和鼠标释放的时间,这会告诉您鼠标按下的时间。如果鼠标侦听器启动和停止计数器,那么计数速度取决于重力变量,您将很容易得到在经过的时间内发生了多少计数。

很好的作业!如果你想知道,这就是所谓的微分(微积分中的一个主题)。请注意标签。问题不是纯Java或Swing。处理有自己的输入功能,不应该使用AWT或Swing工具。@KevinWorkman你说得对,但是java标记、鼠标按钮的引用和指针位置的引用提醒了我一个窗口工具包。我所知道的java中唯一的一个是AWT,因此是Swing。任何其他实现看起来都像是重新发明轮子。请尝试理解什么是处理。处理在幕后使用Swing和AWT。但您不应该在处理的基础上使用Swing和AWT。