Java の LocalDate の minusYears メソッド

JavaJavaBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Java の LocalDate クラスの minusYears() メソッドを使用して、指定された日付から年を減算する方法を学びます。このメソッドを使用することで、Java プログラムで日付の算術演算を簡単に行うことができます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/FileandIOManagementGroup(["File and I/O Management"]) java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java/BasicSyntaxGroup -.-> java/output("Output") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/classes_objects("Classes/Objects") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/packages_api("Packages / API") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/date("Date") java/FileandIOManagementGroup -.-> java/io("IO") java/SystemandDataProcessingGroup -.-> java/object_methods("Object Methods") java/SystemandDataProcessingGroup -.-> java/system_methods("System Methods") subgraph Lab Skills java/output -.-> lab-117820{{"Java の LocalDate の minusYears メソッド"}} java/classes_objects -.-> lab-117820{{"Java の LocalDate の minusYears メソッド"}} java/packages_api -.-> lab-117820{{"Java の LocalDate の minusYears メソッド"}} java/date -.-> lab-117820{{"Java の LocalDate の minusYears メソッド"}} java/io -.-> lab-117820{{"Java の LocalDate の minusYears メソッド"}} java/object_methods -.-> lab-117820{{"Java の LocalDate の minusYears メソッド"}} java/system_methods -.-> lab-117820{{"Java の LocalDate の minusYears メソッド"}} end

LocalDate クラスをインポートする

日付(年、月、日)を表すために使用される LocalDate クラスをインポートするには、プログラムの先頭に次のコード行を追加します。

import java.time.LocalDate;

LocalDate オブジェクトを作成する

LocalDate クラスの of() メソッドを呼び出すことで、日付を表す LocalDate オブジェクトを作成します。of() メソッドには、年、月、日の 3 つの引数が必要です。この例では、2009 年 10 月 10 日の LocalDate オブジェクトを作成しています。

LocalDate localDate = LocalDate.of(2009, 10, 10);

LocalDate オブジェクトから年を減算する

LocalDate オブジェクトで表される日付から年を減算するには、minusYears() メソッドを使用します。minusYears() メソッドには、減算する年数を表す 1 つの引数が必要です。

localDate = localDate.minusYears(1);

結果となる日付を出力する

LocalDate オブジェクトから年を減算した後の結果となる日付を、println() メソッドを使って出力します。

System.out.println("New date : "+localDate);

無効な日付を処理する

時々、LocalDate オブジェクトから年を減算すると無効な日付になる場合があります。たとえば、うるう年の 2 月 29 日から 1 年を減算すると、平年の 2 月 29 日という無効な日付になります。

minusYears() メソッドは、結果となる日付をその月の最後の有効な日に調整することで無効な日付を処理します。たとえば、結果となる日付が 2 月 29 日であり、その年がうるう年でない場合、結果となる日付は 2 月 28 日に調整されます。

LocalDate localDate = LocalDate.of(2012, 02, 29);
System.out.println(localDate);
localDate = localDate.minusYears(1);
System.out.println("New date : "+localDate);

プログラムをコンパイルして実行する

プログラムファイルを保存し、ターミナルでそのファイルが保存されているディレクトリに移動します。次のコマンドを使用してプログラムをコンパイルして実行します。

javac DateDemo.java
java DateDemo

まとめ

この実験では、Java の LocalDate クラスの minusYears() メソッドを使って日付から年を減算する方法を学びました。このメソッドは使いやすく、結果となる日付をその月の最後の有効な日に調整することで無効な日付を処理します。