我正在尝试编写一个方法,该方法将返回自上次调用该方法以来经过的时间量,它看起来像这样:
package JGame.Util;
import java.util.Date;
public class Util{
protected static Long lastTime = null;
public static long getLastTime(){
long time = new Date().getTime();
if(Util.lastTime == null){
Util.lastTime = time;
return 0;
}
long ftime = time - Util.lastTime;
Util.lastTime = time;
return ftime;
}
}
然后我在按键事件中调用这样的方法:
long lastTime = Util.getLastTime();
if(lastTime > 1000){
return;
}
System.out.println(lastTime);
我遇到的问题是,当按下键时它会打印出来lastTime
,但它应该每秒打印一次。
这是输出:
122
6
7
13
9
7
10
9
10
在按住键的同时,我期望所有的间隔都非常接近 1 秒。但数字甚至不接近。