Java

LocalDate, LocalTime, LocalDateTime

Wanderer Kim 2025. 5. 13. 03:04
반응형

java에서 시간/날짜를 표시하는 class 중 지역의 날짜/시간을 나타내는 LocalDate, LocalTime, LocalDateTime에 대해서 정리해 보았다.

  • LocalDate: 날짜만 표현할 때 사용한다.
  • LocalTime: 시간만을 표현할 때 사용한다.
  • LocalDateTime: LocalDate와 LocalTime을 합한 개념이다.

LocalDate

public final class LocalDate
        implements Temporal, TemporalAdjuster, ChronoLocalDate, Serializable {

    /**
     * The year.
     */
    private final int year;
    /**
     * The month-of-year.
     */
    private final short month;
    /**
     * The day-of-month.
     */
    private final short day;
}

위는 LocalDate 클래스의 정의 부분이다. 코드에서 확인할 수 있다시피 년도, 월, 일을 나타내는 것을 확인할 수 있다.

 

메서드

생성

  • now(): 현재 시간를 기준으로 생성한다.
  • of(): 특정 날짜를 기준으로 생성한다. 년,월,일을 입력할 수 있다.

계산

  • plusDats(): 특정 일을 더한다.
  • plusWeeks(): 특정 주를 더한다.
  • plusMonths(): 특정 월을 더한다.
  • plusYears(): 특정 년을 더한다. 

LocalTime

public final class LocalTime
        implements Temporal, TemporalAdjuster, Comparable<LocalTime>, Serializable {

    /**
     * The hour.
     */
    private final byte hour;
    /**
     * The minute.
     */
    private final byte minute;
    /**
     * The second.
     */
    private final byte second;
    /**
     * The nanosecond.
     */
    private final int nano;
  }

LocalTime은 시,분,초,나노초를 나타내틑 클래스이다.

메서드

생성

  • now(): 현재 시간을 기준으로 생성한다.
  • of(): 특정 시간을 기준으로 생성한다. 시,분,초,나노초를 입력할 수 있다.

계산

  • plusHours(): 시간을 더한다.
  • plusMinutes(): 분을 더하낟.
  • plusSeconds(): 초를 더한다.

LocalDateTime

public final class LocalDateTime
        implements Temporal, TemporalAdjuster, ChronoLocalDateTime<LocalDate>, Serializable {

    /**
     * The date part.
     */
    private final LocalDate date;
    /**
     * The time part.
     */
    private final LocalTime time;
 }

LocalDateTime은 LocaDate와 LocalTime을 가지고있어서 날짜와 시간을 모두 표현할 수 있는 클래스이다.

메서드

생성

  • now(): 현재 시간을 기준으로 생성한다.
  • of(): 특정 날짜/시간을 기준으로 생성한다.

분리

  • toXXX(): LocalDateTime을 LocalDate와 LocalTime으로 분리할 수 있다. e.g. toLocalTime(), toLocalDate()

합체

  • LocalDateTime.of(LocalDate date, LocalTime time) : LocalDate와 LocalTime을 LocalDateTime으로 만들어 준다.

계산

  • plusXXX(): 날짜와 시간을 더해준다. e.g. plusYears(), plusMonths()

비교

  • isBefore(): 다른 LocalDateTime과 비교한다. 현재 날짜와 시간이 이전이라면 true 반환한다.
  • isAfter(): 현재 LocalDateTime이 다른 LocalDateTime보다 이후라면 true를 반환한다.
  • isEqual(): 현재 LocalDateTime이 다른 LocalDateTime과 같으면 true를 반환한다.
728x90