0

開始点は現在の時刻であり、最小値と最大値はユーザーが設定した特別な変数 (upperBound) によって計算されるため、時間間隔を作成しようとしています。したがって、コードは次のようになります。

private static int upperBound = 1440;
.....
Calendar calendar = Calendar.getInstance();
System.out.println("Now:\t\t\t" + calendar.getTime());
calendar.set(Calendar.MINUTE, -upperBound);
System.out.println("After the change:\t" + calendar.getTime());

出力は次のとおりです。

Now:            Mon Jan 27 14:53:42 EET 2014
After the change:   Sun Jan 26 14:00:42 EET 2014

しかし、私は(変更後)になると予想しています:Sun Jan 26 14:53:42 EET 2014

ここで何が問題なのですか?

4

2 に答える 2

1

add()ではなく、メソッドを使用する必要がありますset

calendar.add(Calendar.MINUTE, -upperBound);
于 2014-01-27T13:04:28.457 に答える