はじめに
Java の LocalDate
クラスを使うと、日付に基づく演算を行うことができます。必要な演算の 1 つは、与えられた日付から特定の日数、週数または月数を引くことです。minus()
メソッドは、LocalDate
オブジェクトから指定された時間量を引きます。
Java の LocalDate
クラスを使うと、日付に基づく演算を行うことができます。必要な演算の 1 つは、与えられた日付から特定の日数、週数または月数を引くことです。minus()
メソッドは、LocalDate
オブジェクトから指定された時間量を引きます。
次のコマンドを使って、~/project
ディレクトリに新しい Java ファイル DateDemo.java
を作成します。
touch ~/project/DateDemo.java
必要なクラス LocalDate
と ChronoUnit
をインポート文を使ってインポートします。
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
of()
メソッドを使って特定の日付を表す LocalDate
のインスタンスを作成します。
LocalDate localDate = LocalDate.of(2021, 8, 15);
次に、minus()
メソッドを使って上記の日付から特定の日数を引きます。以下のコードを使って、上記の日付から 2 日を引きます。
//日付から 2 日を引く
localDate = localDate.minus(2, ChronoUnit.DAYS);
上記のコードは、LocalDate
インスタンス localDate
から 2 日を引きます。
LocalDate
オブジェクトから月数を引くには、minus()
メソッドを使用できます。ステップ 3 で作成した同じ localDate
オブジェクトを使用し、以下のコードを使って 2 か月引きます。
// 日付から 2 か月引く
localDate = localDate.minus(2, ChronoUnit.MONTHS);
上記のコードは、localDate
インスタンスから 2 か月を引きます。
それぞれ 2 日と 2 か月を引いた後の元の日付と新しい日付を、System.out.println()
メソッドを使って表示します。
System.out.println("Original date: " + LocalDate.of(2021, 8, 15));
System.out.println("New date after subtracting 2 days: " + localDate);
System.out.println("New date after subtracting 2 months: " + localDate1);
コードを実行するには、以下のコマンドを使って DateDemo.java
ファイルをコンパイルします。
javac ~/project/DateDemo.java
コンパイルエラーがなければ、以下のコマンドを使ってプログラムを実行できます。
java DateDemo
プログラムの出力には、それぞれ 2 日と 2 か月を引いた後の元の日付と新しい日付が表示されるはずです。出力は以下に似たようになります。
Original date: 2021-08-15
New date after subtracting 2 days: 2021-08-13
New date after subtracting 2 months: 2021-06-13
この実験では、LocalDate
オブジェクトから指定された日数または月数を引くために minus()
メソッドをどのように使用するかを学びました。また、引き算後の元の日付と新しい日付をどのように表示するかも学びました。minus()
メソッドは、Java で日付の計算を行う必要がある場合に便利です。