首頁 > Java > java教程 > 如何使用現代日期和時間 API 在 Java 中準確計算年齡?

如何使用現代日期和時間 API 在 Java 中準確計算年齡?

Linda Hamilton
發布: 2024-12-22 01:24:20
原創
727 人瀏覽過

How Can I Accurately Calculate Age in Java Using the Modern Date and Time API?

在 Java 中計算年齡:改進的方法

在 Java 中,取得年齡需要精確的方法。使用 getYear() 函數的已棄用方法促使人們尋找更新的解決方案。

為了解決這個問題,引入了 Java 日期和時間 API (JSR-310) JDK 8 簡化了這個過程。考慮以下方法:

public int getAge() {
    LocalDate today = LocalDate.now();
    long ageInMillis = today.toEpochDay() - birthDate.toEpochDay();
    return (int) TimeUnit.MILLISECONDS.toDays(ageInMillis) / 365;
}
登入後複製

說明:

  • 它利用toEpochDay() 方法轉換當前日期(透過LocalDate.now 取得) ())和出生日期到長格式紀元表示。
  • 區別使用簡單的算術即可獲得這些紀元之間的天數(以毫秒為單位)。
  • 要將以毫秒為單位的年齡轉換為年,請將其除以每年的毫秒數(365 天)。

單位測試:

@Test
public void getAge_Success() {
    Person person = new Person(LocalDate.parse("1970-01-01"), "Jane Doe");
    assertEquals(50, person.getAge());
}
登入後複製

結論:

採用Java 日期和時間API,年齡計算變得既準確又有效率。修改後的方法提供了一個強大的解決方案,可以無縫地融入現代 Java 開發。

以上是如何使用現代日期和時間 API 在 Java 中準確計算年齡?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板