개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.16 16:02

IntlCalendar::getActualMaximum에 대한 혼란

목록
  • 백엔드도령 1일 전 2025.05.16 16:02
  • 5
    1
저는 IntlCalendar::getActualMaximum 함수를 사용하여 날짜의 최대값을 가져오려 하지만, 실제로 사용할 수 있는 최대값과 getMaxValue를 사용하여 가져올 수 있는 최대값이 다른 경우가 있습니다.

IntlCalendar cal = new IntlCalendar("Korean", Locale.KOREA);

cal.setTime(new Date());

int maxDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);

int maxDay2 = cal.getMaxValue(Calendar.DAY_OF_MONTH);

System.out.println(maxDay + " " + maxDay2);

위의 코드에서 maxDay와 maxDay2는 동일한 값을 출력해야 하는데, 실제로는 다른 값을 출력합니다.

IntlCalendar::getActualMaximum 함수는 실제로 사용할 수 있는 최대값을 가져오고, getMaxValue 함수는 시스템의 최대값을 가져옵니다.

IntlCalendar cal = new IntlCalendar("Korean", Locale.KOREA);

cal.setTime(new Date());

int maxDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);

int maxDay2 = cal.getMaxValue(Calendar.DAY_OF_MONTH);

System.out.println(maxDay + " " + maxDay2);

위의 코드에서 maxDay와 maxDay2는 동일한 값을 출력해야 하는데, 실제로는 다른 값을 출력합니다.

IntlCalendar::getActualMaximum 함수는 실제로 사용할 수 있는 최대값을 가져오고, getMaxValue 함수는 시스템의 최대값을 가져옵니다.

IntlCalendar cal = new IntlCalendar("Korean", Locale.KOREA);

cal.setTime(new Date());

int maxDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);

int maxDay2 = cal.getMaxValue(Calendar.DAY_OF_MONTH);

System.out.println(maxDay + " " + maxDay2);

위의 코드에서 maxDay와 maxDay2는 동일한 값을 출력해야 하는데, 실제로는 다른 값을 출력합니다.

IntlCalendar::getActualMaximum 함수는 실제로 사용할 수 있는 최대값을 가져오고, getMaxValue 함수는 시스템의 최대값을 가져옵니다.

IntlCalendar cal = new IntlCalendar("Korean", Locale.KOREA);

cal.setTime(new Date());

int maxDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);

int maxDay2 = cal.getMaxValue(Calendar.DAY_OF_MONTH);

System.out.println(maxDay + " " + maxDay2);

위의 코드에서 max

    댓글목록

    profile_image
    나우호스팅  1일 전



    IntlCalendar::getActualMaximum 함수는 시스템의 실제 사용 가능한 최대값을 반환합니다. getMaxValue 함수는 시스템의 최대값을 반환합니다. 두 함수의 결과가 항상 동일하지는 않습니다.

    예를 들어, 한 달의 마지막 날짜를 가져올 때, 시스템의 실제 사용 가능한 최대값은 31일이지만 시스템의 최대값은 31일이 아닐 수 있습니다. 예를 들어, 윤년의 2월 29일은 시스템의 실제 사용 가능한 최대값은 29일이지만 시스템의 최대값은 31일입니다.

    IntlCalendar cal = new IntlCalendar("Korean", Locale.KOREA);
    cal.setTime(new Date());
    int maxDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
    int maxDay2 = cal.getMaxValue(Calendar.DAY_OF_MONTH);
    System.out.println(maxDay + " " + maxDay2);

    위의 코드에서 maxDay와 maxDay2는 항상 동일한 값을 출력하지 않을 수 있습니다. IntlCalendar::getActualMaximum 함수와 getMaxValue 함수를 사용할 때, 시스템의 실제 사용 가능한 최대값과 시스템의 최대값을 구분해야 합니다.

    2025-05-16 16:03

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 20,214건 / 12 페이지

검색

게시물 검색