獲取 Java 中的當前年份
-
在 Java 中使用
java.Util.Date
類獲取當前年份 -
在 Java 中使用
LocalDate
類獲取當前年份 -
在 Java 中使用
java.util.Calendar
類獲取當前年份 -
使用
Joda Time
包獲取 Java 中的當前年份 -
在 Java 中使用
java.time.YearMonth
類獲取當前年份的整數值
在本教程中,討論瞭如何在 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