タイマーで「if」ステートメントを使用する際に問題が発生しました。if ループを約 1 秒ごとに実行するようにタイマーを設定していますが、「if」条件が満たされていない場合でも、if ステートメント内のアクションが実行されます。ここで何か間違ったことをしていますか、それとも不可能ですか?
コード:
//GLOBAL TIMERS
//car edge detection
int initialDelay = 0; // start after 0 seconds
int period = 50; // repeat every 5 seconds
final Timer carAI = new Timer();
TimerTask task = new TimerTask() {
public void run() {
if (redcar.getX() == -50); {
redcar.setIcon(new ImageIcon(gui.class.getResource("/main/redcar.png")));
redcar.setLocation(redcar.getX() + 5, redcar.getY());
}
}
};
carAI.scheduleAtFixedRate(task, initialDelay, period);