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