Java - Date와 Time Api

2020. 9. 27. 20:27개인공부/java

13. DateTime API

지금 이 순간을 기계 시간으로 표현하는 방법

  • ●  Instant.now(): 현재 UTC (GMT)를 리턴한다.

  • ●  Universal Time Coordinated == Greenwich Mean Time

    인류용 일시를 표현하는 방법

  • ●  LocalDateTime.now(): 현재 시스템 Zone에 해당하는(로컬) 일시를 리턴한다.

  • ●  LocalDateTime.of(int, Month, int, int, int, int): 로컬의 특정 일시를 리턴한다.

  • ●  ZonedDateTime.of(int, Month, int, int, int, int, ZoneId): 특정 Zone의 특정 일시를

    리턴한다.

기간을 표현하는 방법

● Period / Duration . beteen()

Period between = Period.between(today, birthDay); System.out.println(between.get(ChronoUnit.DAYS));

파싱 또는 포매팅

레거시 API 지원

Instant now = Instant.now(); System.out.println(now); System.out.println(now.atZone(ZoneId.of("UTC")));

ZonedDateTime zonedDateTime = now.atZone(ZoneId.systemDefault()); System.out.println(zonedDateTime);

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MM/d/yyyy");

LocalDate date = LocalDate.parse("07/15/1982", formatter); System.out.println(date); System.out.println(today.format(formatter));

● ●

GregorianCalendarDate 타입의 인스턴스를 InstantZonedDateTime으로 변환 가능. java.util.TimeZone에서 java.time.ZoneId로 상호 변환 가능.

ZoneId newZoneAPI = TimeZone.getTimeZone("PST").toZoneId();

TimeZone legacyZoneAPI = TimeZone.getTimeZone(newZoneAPI);

Instant newInstant = new Date().toInstant(); Date legacyInstant = Date.from(newInstant);

'개인공부 > java' 카테고리의 다른 글

Java - Executors  (0) 2020.09.28
Java- Concurrent 프로그래밍  (0) 2020.09.28
JAVA - stream  (0) 2020.09.27
JAVA - 함수형 인터페이스  (0) 2020.09.26
JAVA - 메타 애너테이션  (0) 2020.09.26