Java で現在の年を取得する
-
Java で
java.Util.Date
クラスを使用して現在の年を取得する -
Java で
LocalDate
クラスを使用して現在の年を取得する -
Java で
java.util.Calendar
クラスを使用して現在の年を取得する -
Java で
Joda Time
パッケージを使用して現在の年を取得する -
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
上記の出力でわかるように、date オブジェクトは 121 として取得されますが、現在の年を取得する必要があります。最終結果、つまり 2021 を取得するには、日付オブジェクトに 1900 を再度追加する必要があります。
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
クラスを使用して現在の年を取得する
もう 1つのアプローチは、Java で Calendar
クラスを使用することです。これは、月、年、時間などの日付とカレンダーフィールドの変換に役立つ抽象 Java クラスです。
Calendar
クラスは抽象クラスであるため、getInstance()
メソッドはサブクラスを開始する静的メソッドです。コンストラクターメソッドを使用してインスタンスを作成することはできません。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 クラスを使用して、特定の日付の現在の年を出力できます。このためには、GregorianCalendar()
として知られる Calendar
の別のサブクラスを使用する必要があります。
例えば、
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
Java で Joda Time
パッケージを使用して現在の年を取得する
アプリケーションで日付オブジェクトとカレンダーオブジェクトを頻繁に使用する場合は、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