質問: Calendar.getInstance(); cal.set(Calendar.HOUR, 0); timer.schedule(new TaskTimer(), cal.getTime()); しかし、このようにするとスケジュールした時に1度TaskTimerが実行されてしまいます。 時間が来るまで実行しないようにする方法を教えてください。
回答: その時間の指定の仕方だと、現在日時の時間だけ0時にした日時が指定されます。 既に過ぎている時刻なので直ちに実行されるのでしょう。 日時をフルで指定してください。 ところで、毎日指定時刻に実行したいのでしょうか? その場合は、scheduleAtFixedRateメソッドを使用するのが適当です。 詳しくはJavaDocを参照してください。