본문 바로가기
자바

JAVA - LocalDate, LocalTime, LocalDateTime

by 왈레 2022. 4. 18.
  • 3개의 클래스 모두 타임존 개념을 가지고 있지 않기 때문에 타임존에 따른 시간 변환이 불가능하다.
  • 3개의 클래스 모두 immutable 타입이다.
  • 자바8 이전의 날짜와 시간 관련 API인 Date, Calender 클래스들은 더이상 사용하지 않습니다.

LocalDate (yyyy-MM-dd)

//날짜 출력
LocalDate date1 = LocalDate.now();
System.out.println(date1); //2022-04-14
System.out.println(date1.getYear()); //2022
System.out.println(date1.getMonthValue()); //4
System.out.println(date1.getMonth()); //APRIL

System.out.println(date1.getDayOfYear()); //104 (1~365, 윤년이면 366)
System.out.println(date1.getDayOfMonth()); // 14
System.out.println(date1.getDayOfWeek()); // THURSDAY

//날짜 입력
LocalDate date2 = LocalDate.of(1990, 8, 29);
System.out.println(date2); //1990-8-29

LocalDate date3 = LocalDate.parse("1990-08-29");
System.out.println(date3); //1990-8-29

//윤년 확인
LocalDate date4 = LocalDate.parse("2020-06-03");
System.out.printf("%s년은 %s입니다.\n", date4.getYear(), (date4.isLeapYear() ? "윤년" : "평년"));
/* 2020년은 윤년입니다. */
  • LocalDate 클래스는 public 생성자를 제공하지 않습니다.
  • 따라서 LocalDate객체를 생성할 때는 now()나, of(), parse()와 같은 정적 메소드를 사용하도록 되어 있습니다.

 

LocalTime (HH:mm:ss.SSS)

LocalTime currentTime = LocalTime.now(); //현재시각 (12:52:11.804)
LocalTime currentTimeInParis = LocalTime.now(ZoneId.of("Asia/Seoul")); //한국 서울 시각(02:12:23.706)
LocalTime timeToGoToBed = LocalTime.of(23, 30, 0);
LocalTime timeToGetUp = timeToGoToBed.plusHours(8);

System.out.println("

 

댓글