JavaでLocalDateから年齢を計算する方法


  1. ChronoUnitを使用した方法: ChronoUnitクラスを使用して、LocalDateオブジェクトの日付と現在の日付との間の年数を計算します。

    import java.time.LocalDate;
    import java.time.temporal.ChronoUnit;
    public class AgeCalculator {
       public static void main(String[] args) {
           LocalDate birthDate = LocalDate.of(1990, 5, 15);
           LocalDate currentDate = LocalDate.now();
           long age = ChronoUnit.YEARS.between(birthDate, currentDate);
           System.out.println("年齢: " + age);
       }
    }
  2. Periodを使用した方法: Periodクラスを使用して、LocalDateオブジェクトの日付と現在の日付との間の期間を計算し、年数を取得します。

    import java.time.LocalDate;
    import java.time.Period;
    public class AgeCalculator {
       public static void main(String[] args) {
           LocalDate birthDate = LocalDate.of(1990, 5, 15);
           LocalDate currentDate = LocalDate.now();
           Period period = Period.between(birthDate, currentDate);
           int age = period.getYears();
           System.out.println("年齢: " + age);
       }
    }
  3. java.time.Yearを使用した方法: java.time.Yearクラスを使用して、LocalDateオブジェクトの日付から年を取得し、現在の年から引いて年齢を計算します。

    import java.time.LocalDate;
    import java.time.Year;
    public class AgeCalculator {
       public static void main(String[] args) {
           LocalDate birthDate = LocalDate.of(1990, 5, 15);
           int birthYear = birthDate.getYear();
           int currentYear = Year.now().getValue();
           int age = currentYear - birthYear;
           System.out.println("年齢: " + age);
       }
    }

これらの方法を使用して、JavaでLocalDateから年齢を計算することができます。どの方法を選ぶかは好みやコンテキストによります。