獲取 Java 中的當前年份

Siddharth Swami 2023年10月12日
  1. 在 Java 中使用 java.Util.Date 類獲取當前年份
  2. 在 Java 中使用 LocalDate 類獲取當前年份
  3. 在 Java 中使用 java.util.Calendar 類獲取當前年份
  4. 使用 Joda Time 包獲取 Java 中的當前年份
  5. 在 Java 中使用 java.time.YearMonth 類獲取當前年份的整數值
獲取 Java 中的當前年份

在本教程中,討論瞭如何在 Java 中獲取當前年份的不同方法。

在 Java 中使用 java.Util.Date 類獲取當前年份

java.util.Date 類中的 getYear() 方法可用於獲取舊版本 JDK 中的當前年份,現在已替換為 Calendar.get(Calendar.YEAR) 方法。

此方法用於通過從當前日期物件中減去 1900 來返回值。

請參考以下程式碼。

import java.util.Date;

public class Java_Date_GetYear {
  public static void main(String[] args) {
    Date dt = new Date();
    int year = dt.getYear();
    System.out.println("Year for date object is : " + year);
    int current_Year = year + 1900;
    System.out.println("Current year is : " + current_Year);
  }
}

輸出:

Year for date object is : 121
Current year is : 2021

正如我們在上面的輸出中看到的,我們得到的日期物件是 121,但我們需要得到當前的年份。我們必須再次向日期物件新增 1900 才能得到最終結果,即 2021。

在 Java 中使用 LocalDate 類獲取當前年份

該類的概念是利用該類下提供的方法,如 getyear()getMonth() 等,根據使用者需要獲取當前年份或月份。

例如,

import java.time.LocalDate;

class Current_Year {
  public static void main(String args[]) {
    // Getting the current date value of the system
    LocalDate current_date = LocalDate.now();
    System.out.println("Current date: " + current_date);

    // getting the current year from the current_date
    int current_Year = current_date.getYear();
    System.out.println("Current year: " + current_Year);
  }
}

輸出:

Current date: 2021-06-06
Current year: 2021

在上面的程式碼中,我們獲取執行程式碼的系統的當前日期、時間和年份,然後在輸出視窗中返回當前年份。為此,使用 LocalDate() 類的 now() 方法。

在 Java 中使用 java.util.Calendar 類獲取當前年份

另一種方法是使用 Java 中的 Calendar 類。這是一個抽象的 Java 類,可幫助轉換日期和日曆欄位,如月、年、小時等。

getInstance() 方法是用於啟動子類的靜態方法,因為 Calendar 類是一個抽象類。我們不能使用建構函式方法來建立例項。get(Calendar.Year) 方法可以提供系統中的當前年份。

例如,

import java.util.Calendar;
public class Get_Current_Year {
  public static void main(String args[]) {
    Calendar cal = Calendar.getInstance();
    System.out.println("The Current Year is:" + cal.get(Calendar.YEAR));
  }
}

輸出:

The Current Year is:2021

我們可以使用 Calendar 類列印特定日期的當前年份。為此,我們必須使用 Calendar 的另一個子類,稱為 GregorianCalendar()

例如,

import java.util.*;

class Get_Current_Year2 {
  public static void main(String args[]) {
    // Creating a calendar object
    Calendar c = new GregorianCalendar(2020, 02, 11);

    // Getting the value of the year from calendar object
    int year = c.get(Calendar.YEAR);

    // Printing the year
    System.out.println("Year: " + year);
  }
}

輸出:

Year: 2020

使用 Joda Time 包獲取 Java 中的當前年份

如果你的應用程式中大量使用日期和日曆物件,那麼你應該使用 Joda Time 包。java.util.Date 類是可變的,而 java.util.calendar 類在更新其欄位時存在一些與效能相關的問題。

Joda Time 擁有比 Java 包中的類更有效的方法。

請參考以下程式碼。

import org.joda.time.DateTime;
import org.joda.time.LocalDateTime;
public class Joda_Time {
  public static void main(String[] args) {
    DateTime now = new DateTime();
    System.out.println("Current Year: " + now.year().getAsText());
  }
}

輸出:

Current Year : 2021

正如我們在上面的程式碼中看到的,我們建立了一個用於獲取系統當前日期的 DateTime() 物件。要使用 Joda-Time,我們必須下載它,因為它沒有預裝在任何 IDE 中。

在 Java 中使用 java.time.YearMonth 類獲取當前年份的整數值

我們還可以使用 java.time.YearMonth 類,它為我們提供了 getYear() 方法來列印系統的當前年份。

下面的程式碼演示了此方法的使用。

import java.time.YearMonth;
public class Current_Year {
  public static void main(String[] args) {
    int year = YearMonth.now().getYear();

    System.out.println("Current year: " + year);
  }
}

輸出:

Current year: 2021

相關文章 - Java DateTime