Java:從日期獲取月份整數


問題陳述

從日期物件中提取月份整數是開發者的一項基本技能。這是因為您可能會遇到需要生成月度報表、按月份過濾日期以及安排事件等類似任務。在本文中,我們將嘗試熟悉Java強大的日期和時間API。

前提條件

讓我們深入探討手頭的Java任務,請確保您考慮以下幾點。確保您熟悉基本的Java語法,特別是日期和時間API。您將使用諸如`java.util.Date`、`java.util.Calendar`和現代`java.time`包(最近在Java 8中引入)之類的語法。

專案結構

如果您選擇使用像Eclipse這樣的JavaIDE,您的專案結構應該如下所示。

src/ 
├── main/ 
│ ├── java/ 
│ │ └── com/example/monthinteger/ 
│ │ ├── DateUtils.java 
│ │ ├── Main.java 
│ └── resources/ 
│ └── application.properties

現在讓我們看看兩種可以從日期中提取月份整數的可能方法;使用`Calendar`和`LocalDate`類方法。

使用Calendar類

Calendar類方法是從日期中提取月份整數最常見的方法之一。下面的提示將提供有關如何執行Java程式碼的見解。

  • 第一步是使用`Date`函式建立和獲取當前時間。
  • 然後,您可以使用`Calendar.getInstance()`函式建立一個`Calendar`例項。
  • 下一步是使用`Date`物件透過`setTime()`函式設定`Calendar`。
  • 最後,您可以使用`get(Calendar.MONTH)`來檢索月份整數。需要注意的是,月份索引是從0開始的,這意味著一月=0,您可以透過加1來獲得基於1的月份值。

示例

以下是使用Calendar類從日期獲取月份整數的完整Java程式碼塊。

import java.util.Calendar;
import java.util.Date;

public class MonthExtractionExample {
   public static void main(String[] args) {
      Date currentDate = new Date();

      Calendar calendar = Calendar.getInstance();
      calendar.setTime(currentDate);

      int month = calendar.get(Calendar.MONTH);
      System.out.println("Month integer: " + (month + 1));
   }
}

輸出

Month integer: 9

以下是編譯過程後Calendar類外觀的片段。

使用LocalDate類

下面的提示提供了有關如何使用LocalDate類從當前日期提取月份整數的指南。

  • 使用`LocalDate.of`函式建立一個`LocalDate`物件來表示當前日期。
  • 之後就很順利了,您只需要使用`getMonthValue()`方法來檢索月份整數。此方法提供了一種直接返回基於1的月份值的高效方法。

示例

這是您可以貼上到Java IDE中以從當前日期檢索月份整數的完整程式碼塊。

import java.time.LocalDate;

public class GetMonthFromDate {
   public static void main(String[] args) {
      // Create a LocalDate instance
      LocalDate date = LocalDate.of(2024, 9, 9);

      // Get the month as an integer
      int month = date.getMonthValue();

      // Print the month
      System.out.println("The month is: " + month);
   }
}

輸出

The month is: 9

您應該會看到類似於下圖所示的輸出螢幕,以確認使用上面的Java程式碼從日期獲取月份整數。

如何選擇理想的方法

以上兩種程式碼都提供了一種從日期中提取月份整數的高效方法。一方面,Calendar類方法提供了一種更傳統的方法來提取月份整數。

LocalDate類方法提供了一種獲取月份整數的現代方法。最佳指南是:如果您使用的是Java 8及更高版本,則使用LocalDate方法;如果您使用的是較舊的Java版本,則使用Calendar方法。

總結!

以上內容涵蓋了從日期提取月份整數的兩種常用方法。這兩種Java月份整數獲取方法都相對容易移植到您的專案中。如果您想在決定理想方法之前嘗試這兩種方法,請使用Java 8及更高版本。

Nickey Bricks
Nickey Bricks

技術撰寫人

更新於:2024年9月10日

81 次檢視

啟動您的職業生涯

完成課程後獲得認證

開始學習
廣告
© . All rights reserved.