개발자 Q&A

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

2025.07.03 18:26

IntlCalendar::getTimeZone 관련 질문

목록
  • 앵귤러도사 14일 전 2025.07.03 18:26
  • 42
    1
IntlCalendar 클래스의 getTimeZone() 메소드는 지역 시간을 가져올 때 사용되는데, 이 메소드의 반환값이 무엇인지 궁금합니다.

IntlCalendar 인스턴스를 생성하고 getTimeZone() 메소드를 호출하면, 지역 시간을 나타내는 TimeZone 객체가 반환됩니다. 이 객체는 지역 시간의 ID, 이름, UTC offset, DST 정보 등을 포함합니다.

하지만 getTimeZone() 메소드의 반환값이 TimeZone 객체일 뿐만 아니라, TimeZone 객체를 포함하는 ZoneRuleset 객체가 반환될 수 있습니다.

getTimeZone() 메소드의 반환값이 TimeZone 객체인지 ZoneRuleset 객체인지, 어떤 경우에 반환되는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  14일 전



    IntlCalendar 클래스의 getTimeZone() 메소드는 지역 시간을 가져올 때 사용되며, 반환값은 TimeZone 객체 또는 ZoneRuleset 객체일 수 있습니다.

    TimeZone 객체는 지역 시간의 ID, 이름, UTC offset, DST 정보 등을 포함하는 객체입니다.

    ZoneRuleset 객체는 TimeZone 객체를 포함하는 객체로, 지역 시간의 규칙을 정의합니다.

    getTimeZone() 메소드의 반환값이 TimeZone 객체인지 ZoneRuleset 객체인지 결정되는 경우는 IntlCalendar의 인스턴스 생성 방법에 따라 달라집니다.

    IntlCalendar 인스턴스를 생성할 때, TimeZone 객체를 직접 지정하면 getTimeZone() 메소드는 TimeZone 객체를 반환합니다.

    하지만 IntlCalendar 인스턴스를 생성할 때, ZoneRuleset 객체를 직접 지정하면 getTimeZone() 메소드는 ZoneRuleset 객체를 반환합니다.

    IntlCalendar 인스턴스를 생성할 때, TimeZone 객체를 지정하지 않으면 getTimeZone() 메소드는 ZoneRuleset 객체를 반환합니다.

    따라서 IntlCalendar 인스턴스를 생성할 때, TimeZone 객체를 직접 지정하는지 여부에 따라 getTimeZone() 메소드의 반환값이 결정됩니다.

    예를 들어, 다음 코드는 TimeZone 객체를 직접 지정하여 IntlCalendar 인스턴스를 생성한 경우입니다.

    #hostingforum.kr
    java
    
    IntlCalendar ic = IntlCalendar.getInstance(TimeZone.getTimeZone("Asia/Seoul"));
    
    TimeZone tz = ic.getTimeZone();
    
    


    이 경우, getTimeZone() 메소드는 TimeZone 객체를 반환합니다.

    #hostingforum.kr
    java
    
    System.out.println(tz.getDisplayName()); // Asia/Seoul
    
    


    반면, 다음 코드는 ZoneRuleset 객체를 직접 지정하여 IntlCalendar 인스턴스를 생성한 경우입니다.

    #hostingforum.kr
    java
    
    ZoneRuleset zrs = ZoneRuleset.of("Asia/Seoul");
    
    IntlCalendar ic = IntlCalendar.of(2022, 1, 1, zrs);
    
    ZoneRuleset zrs2 = ic.getTimeZone();
    
    


    이 경우, getTimeZone() 메소드는 ZoneRuleset 객체를 반환합니다.

    #hostingforum.kr
    java
    
    System.out.println(zrs2.getRulesetId()); // Asia/Seoul
    
    


    따라서 IntlCalendar 인스턴스를 생성할 때, TimeZone 객체를 직접 지정하는지 여부에 따라 getTimeZone() 메소드의 반환값이 결정됩니다.

    2025-07-03 18:27

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

검색

게시물 검색