LocalDateTime — 시간대 없는 날짜-시간
LocalDateTime — 시간대 없는 날짜-시간
ISO-8601 달력 체계에서 시간대가 없는 날짜-시간을 나타내는 클래스예요. 예: 2007-12-03T10:15:30.
본문
시그니처
public final class LocalDateTime extends Object
implements Temporal, TemporalAdjuster, ChronoLocalDateTime<LocalDate>, Serializable
구현된 인터페이스: Serializable, Comparable<ChronoLocalDateTime<?>>, ChronoLocalDateTime<LocalDate>, Temporal, TemporalAccessor, TemporalAdjuster.
설명
LocalDateTime은 불변(immutable) 날짜-시간 객체로, 보통 연-월-일-시-분-초로 보는 날짜-시간을 나타내요. 일 기준 일, 요일, 주 기준 일 같은 다른 날짜·시간 필드에도 접근할 수 있어요. 시간은 나노초 정밀도로 표현돼요. 예를 들어 "2007년 10월 2일 13:45.30.123456789"라는 값을 LocalDateTime에 저장할 수 있어요.
이 클래스는 시간대를 저장하거나 나타내지 않아요. 대신 생일처럼 쓰는 날짜 설명과 벽시계에서 보는 로컬 시간을 결합한 것이에요. 오프셋이나 시간대 같은 추가 정보 없이는 시간선 위의 순간(instant)을 나타낼 수 없어요.
이 클래스는 값 기반(value-based) 클래스예요. 프로그래머는 서로 같은 인스턴스를 교환 가능하게 취급해야 하며, 동기화에 인스턴스를 사용하면 안 돼요. 비교에는 equals 메서드를 사용해야 해요.
주요 메서드
now()— 시스템 시계에서 현재 날짜-시간을 얻어요.of(LocalDate date, LocalTime time)— 날짜와 시간에서LocalDateTime인스턴스를 얻어요.parse(CharSequence text)— ISO-8601 텍스트에서LocalDateTime인스턴스를 얻어요.atOffset(ZoneOffset offset)— 이 날짜-시간을 오프셋과 결합해OffsetDateTime을 만들어요.atZone(ZoneId zone)— 이 날짜-시간을 시간대와 결합해ZonedDateTime을 만들어요.format(DateTimeFormatter formatter)— 지정한 포맷터를 사용해 이 날짜-시간을 포맷해요.plusDays(long days)/minusDays(long days)— 날짜-시간을 더하거나 뺀 복사본을 반환해요.toLocalDate()— 이 날짜-시간의 날짜 부분을 얻어요.toLocalTime()— 이 날짜-시간의 시간 부분을 얻어요.getHour()— 시 필드를 얻어요.isAfter(ChronoLocalDateTime<?> other)— 다른 날짜-시간보다 이후인지 확인해요.