> Java > java지도 시간 > Java를 사용하여 연령을 연 단위로 안정적으로 계산하려면 어떻게 해야 합니까?

Java를 사용하여 연령을 연 단위로 안정적으로 계산하려면 어떻게 해야 합니까?

DDD
풀어 주다: 2024-12-18 11:16:11
원래의
287명이 탐색했습니다.

How Can I Reliably Calculate Age in Years Using Java?

나이 계산을 위한 Java 방법

문제:

연수를 정수로 반환하는 Java 방법을 개발하세요. . 이 메소드는 생년월일을 나타내는 Date 객체를 사용합니다.

현재 구현:

public int getAge() {
    long ageInMillis = new Date().getTime() - getBirthDate().getTime();

    Date age = new Date(ageInMillis);

    return age.getYear();
}
로그인 후 복사

제한 사항:

  • getYear() 메소드는 더 이상 사용되지 않습니다.
  • 단위 테스트 없이는 현재 방법의 정확성이 의심스럽습니다.

JDK 8의 향상된 솔루션:

JDK 8은 LocalDate 클래스를 사용하여 개선된 솔루션을 도입합니다.

public class AgeCalculator {

    public static int calculateAge(LocalDate birthDate, LocalDate currentDate) {
        if ((birthDate != null) & (currentDate != null)) {
            return Period.between(birthDate, currentDate).getYears();
        } else {
            return 0;
        }
    }
}
로그인 후 복사

JUnit 테스트:

public class AgeCalculatorTest {

    @Test
    public void testCalculateAge_Success() {
        // setup
        LocalDate birthDate = LocalDate.of(1961, 5, 17);
        // exercise
        int actual = AgeCalculator.calculateAge(birthDate, LocalDate.of(2016, 7, 12));
        // assert
        Assert.assertEquals(55, actual);
    }
}
로그인 후 복사

권장 사항:

나이 계산을 위한 개선되고 안정적인 솔루션을 위해 JDK 8로 업그레이드하세요.

위 내용은 Java를 사용하여 연령을 연 단위로 안정적으로 계산하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿