013 クラスライブラリ(日付を扱うクラス) 015 解答例

import java.time.LocalDate;
import java.time.Period;

public class AgeCalculationExample {
    public static void main(String[] args) {
        // ユーザーからの入力を仮定していないので、生年月日を直接指定
        String birthdateStr = "1990-05-15";

        // 生年月日をLocalDateオブジェクトに変換
        LocalDate birthdate = LocalDate.parse(birthdateStr);

        // 現在の日付を取得
        LocalDate currentDate = LocalDate.now();

        // 年齢を計算
        Period agePeriod = Period.between(birthdate, currentDate);
        int age = agePeriod.getYears();

        // 年齢を表示
        System.out.println("生年月日: " + birthdate);
        System.out.println("現在の日付: " + currentDate);
        System.out.println("年齢: " + age + "歳");
    }
}

このプログラムでは、生年月日を文字列として指定し、LocalDate.parse() メソッドを使用して LocalDate オブジェクトに変換しています。その後、Period.between() メソッドで年齢を計算し、最終的に計算された年齢を表示しています。

「013 クラスライブラリ」問題集リスト