獲取一週開始和結束日期的 Java 程式


在這篇文章中,我們將探討如何使用Java確定一週的開始和結束日期。具體來說,我們將編寫一個程式,該程式接收給定的日期並計算該周的星期一和星期日。

問題陳述

編寫一個 Java 程式,查詢給定日期所在周的開始日期(星期一)和結束日期(星期日)。

輸入

Date = 2019-04-16

輸出

Start of the Week = 2019-04-15
End of the Week = 2019-04-21

計算一週開始和結束日期的步驟

以下是獲取一週開始和結束日期的步驟:

  • 首先,我們將使用來自java.time 包LocalDate 類來設定日期。
  • 使用LocalDate初始化日期以設定特定日期。
  • 為了找到星期一,我們將使用minusDays(1)向後迴圈,直到getDayOfWeek()返回DayOfWeek.MONDAY
  • 為了找到星期日,我們將使用plusDays(1)向前迴圈,直到getDayOfWeek()返回DayOfWeek.SUNDAY
  • 顯示原始日期、星期一和星期日。

計算一週開始和結束日期的 Java 程式

以下是獲取一週開始和結束日期的步驟:

import java.time.DayOfWeek;
import java.time.LocalDate;
public class Demo {
   public static void main(String[] argv) {
      LocalDate date = LocalDate.of(2019, 4, 16);
      System.out.println("Date = " + date);
      LocalDate start = date;
      while (start.getDayOfWeek() != DayOfWeek.MONDAY) {
         start = start.minusDays(1);
      }
      System.out.println("Start of the Week = " + start);
      LocalDate end = date;
      while (end.getDayOfWeek() != DayOfWeek.SUNDAY) {
         end = end.plusDays(1);
      }
      System.out.println("End of the Week = " + end);
   }
}

輸出

Date = 2019-04-16
Start of the Week = 2019-04-15
End of the Week = 2019-04-21

程式碼解釋

程式首先使用來自java.time 包LocalDate 類設定特定日期。這使我們可以輕鬆地處理日期。為了找到一週的開始日期(星期一),我們使用while 迴圈從給定日期向後迴圈,直到一週中的日期為星期一。這是透過使用minusDays() 方法反覆從日期中減去一天來完成的。類似地,為了找到一週的結束日期(星期日),我們向前迴圈到星期日,直到到達星期日,使用plusDays() 方法getDayOfWeek() 方法用於這些迴圈中以檢查當前的一週中的日期。

更新於:2024年8月30日

2K+ 瀏覽量

開啟您的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.