Java程式返回日期,設定為午夜前一個月最後可能的毫秒數


在Java中使用getMaximum()方法返回給定日曆欄位的最大值。我們將使用它來設定分鐘、秒和毫秒。

讓我們首先宣告一個日曆物件:

Calendar dateNoon = Calendar.getInstance();

現在,我們將小時、分鐘、秒和毫秒設定為午夜前一個月最後可能的毫秒數。

// hour, minute and second
calendar.set(Calendar.HOUR_OF_DAY, calendar.getMaximum(Calendar.HOUR_OF_DAY));
calendar.set(Calendar.MINUTE, calendar.getMaximum(Calendar.MINUTE));
calendar.set(Calendar.SECOND, calendar.getMaximum(Calendar.SECOND));
// millisecond
calendar.set(Calendar.MILLISECOND, calendar.getMaximum(Calendar.MILLISECOND));

現在,對月份和日期執行以下操作:

calendar.set(Calendar.DAY_OF_MONTH, 1); // first day of month
calendar.add(Calendar.MONTH, 1);
calendar.add(Calendar.DAY_OF_MONTH, -1);

以下是一個返回日期的示例,該日期設定為午夜前一個月最後可能的毫秒數:

示例

 現場演示

import java.util.Calendar;
import java.util.GregorianCalendar;
public class Demo {
   public static void main(String[] argv) throws Exception {
      Calendar calendar = Calendar.getInstance();
      // hour, minute and second
      calendar.set(Calendar.HOUR_OF_DAY, calendar.getMaximum(Calendar.HOUR_OF_DAY));
      calendar.set(Calendar.MINUTE, calendar.getMaximum(Calendar.MINUTE));
      calendar.set(Calendar.SECOND, calendar.getMaximum(Calendar.SECOND));
      // millisecond
      calendar.set(Calendar.MILLISECOND, calendar.getMaximum(Calendar.MILLISECOND));
      calendar.set(Calendar.DAY_OF_MONTH, 1); // first day of month
      calendar.add(Calendar.MONTH, 1);
      calendar.add(Calendar.DAY_OF_MONTH, -1);
      System.out.println(calendar.getTime());
   }
}

輸出

Fri Nov 30 23:59:59 UTC 2018

更新於: 2019年7月30日

279 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.