はじめに
この実験では、Java のLocalDateクラスのrange()メソッドについて学びます。このメソッドは、月の日、曜日、年などの指定された日付フィールドの有効値の範囲を取得するために使用されます。指定されたフィールドの範囲を取得するために、ChronoField列挙型を引数として使用する方法を学びます。
必要なクラスをインポートする
LocalDateクラスとChronoField列挙型を使用するには、コードファイルの先頭でそれらをインポートする必要があります。
import java.time.LocalDate;
import java.time.temporal.ChronoField;
import java.time.temporal.ValueRange;
LocalDate オブジェクトを作成する
例えば2022-01-01のような任意の日付に対してLocalDateオブジェクトを作成します。
LocalDate date = LocalDate.of(2022, 01, 01);
月の日付フィールドの範囲を取得する
ここでは、range()メソッドとChronoField.DAY_OF_MONTH定数を使用して、月の日のフィールドの範囲を取得します。
ValueRange range = date.range(ChronoField.DAY_OF_MONTH);
有効値の範囲を表示する
ValueRangeのgetValue()メソッドを使用して、月の日のフィールドの有効値の範囲を表示します。
System.out.println("Range of valid values for day-of-month: " + range);
月フィールドの範囲を取得する
次に、range()メソッドとChronoField.MONTH_OF_YEAR定数を使って、月のフィールドの範囲を取得します。
ValueRange range2 = date.range(ChronoField.MONTH_OF_YEAR);
有効値の範囲を表示する
ValueRangeのgetValue()メソッドを使って、月のフィールドの有効値の範囲を表示します。
System.out.println("Range of valid values for month: " + range2);
年フィールドの範囲を取得する
次に、range()メソッドとChronoField.YEAR定数を使って、年のフィールドの範囲を取得します。
ValueRange range3 = date.range(ChronoField.YEAR);
有効値の範囲を表示する
ValueRangeのgetValue()メソッドを使用して、年のフィールドの有効値の範囲を表示します。
System.out.println("Range of valid values for year: " + range3);
プログラムをコンパイルして実行する
プログラムをコンパイルして実行するには、ターミナルに次のコマンドを入力します。
javac LocalDateRange.java
java LocalDateRange
すべてが正しければ、月の日、月、および年のフィールドの有効値の範囲が表示されます。
まとめ
おめでとうございます!Java のLocalDateクラスのrange()メソッドを使って、指定された日付フィールドの有効値の範囲を取得する方法を学びました。指定されたフィールドの範囲を取得するために、ChronoField列挙型を引数として使う方法も学びました。



