Java での年齢の計算: 総合ガイド
Java プログラミングの領域では、誰かの年齢を計算することが一般的なタスクとして発生することがあります。このニーズに対処するために、開発者は年齢を整数として返すための最適なアプローチに関するガイダンスを求めています。
現在の実装:
提供されたコードは Date オブジェクトと非推奨の get Year() メソッド:
public int getAge() { long ageInMillis = new Date().getTime() - getBirthDate().getTime(); Date age = new Date(ageInMillis); return age.getYear(); }
強化アプローチ:
JDK 8 では LocalDate を使用した洗練されたソリューションが導入されています:
public static int calculateAge(LocalDate birthDate, LocalDate currentDate) { if ((birthDate != null) && (currentDate != null)) { return Period.between(birthDate, currentDate).getYears(); } else { return 0; } }
LocalDate を使用する利点:
単体テストの例:
提案されたアプローチについては、次の JUnit を検討してください。 test:
public class AgeCalculatorTest { @Test public void testCalculateAge_Success() { LocalDate birthDate = LocalDate.of(1961, 5, 17); int actual = AgeCalculator.calculateAge(birthDate, LocalDate.of(2016, 7, 12)); Assert.assertEquals(55, actual); } }
古い JDK バージョンの非推奨:
JDK 8 より前のすべての Java バージョンはサポート終了に達していることに注意することが重要です。したがって、JDK 8 以降を採用することを強くお勧めします。
以上がLocalDate を使用して Java で年齢を正確に計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。