メソッドが最後に呼び出されてから経過した時間を返すメソッドを作成しようとしています。次のようになります。
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
印刷されますが、1秒に1回しか印刷されないということです。
出力は次のとおりです。
122
6
7
13
9
7
10
9
10
キーを押している間、私はすべてが1秒間隔に非常に近いことを期待していました。しかし、数字は近くさえありません。