1

こんにちは、以下は私のコードです。

public class DateSample {

public static void main(String as[]){
    Calendar c = Calendar.getInstance();
    System.out.println("Curr : "+ c.getTime());
    c.add(Calendar.DATE, -1);
    c.set(Calendar.HOUR, 23);
    c.set(Calendar.MINUTE, 59);
    c.set(Calendar.SECOND, 59);
    c.set(Calendar.MILLISECOND, 0);
    System.out.println("aftr : "+c.getTime());
}
}

出力は次のとおりです。

現在: 2013 年 2 月 27 日水曜日 15:02:44 CET

後: 2013 年 2 月 27 日水曜日 11:59:59 CET

私が望む出力は、Wed Feb 26 23:59:59 CET 2013 です。しかし、なぜこの混乱が生じるのでしょうか。助けてください。

4

1 に答える 1

6

Calendar.HOUR_OF_DAYを使用

時刻を示す get および set のフィールド番号。HOUR_OF_DAY は 24 時間時計に使用されます。たとえば、午後 10:04:15.250 の HOUR_OF_DAY は 22 です。

 c.set(Calendar.HOUR_OF_DAY, 23);
于 2013-02-27T15:07:13.377 に答える