[Kotlin] LocalDateTime (java.time)

2025. 12. 4. 05:06·학습 기록/kotlin
반응형

LocalDateTime

날짜(LocalDate) + 시간(LocalTime) 정보를 함께 담는 불변 객체

“YYYY-MM-DDTHH:mm:ss” 형태의 로컬 날짜/시간을 표현

1. 생성 방법


val now = LocalDateTime.now()

val dt1 = LocalDateTime.of(2025, 12, 4, 14, 30)
val dt2 = LocalDateTime.of(LocalDate.of(2025, 12, 4), LocalTime.of(14, 30))

val parsed = LocalDateTime.parse("2025-12-04T14:30:00")

 

2. 값 읽기


val dateTime = LocalDateTime.of(2025, 12, 4, 14, 30)

println(dateTime.year) // 2025
println(dateTime.month) // DECEMBER
println(dateTime.monthValue) // 12
println(dateTime.dayOfMonth) // 4
println(dateTime.hour) // 14
println(dateTime.minute) // 30
println(dateTime.second) // 0

- LocalDate, LocalTime의 모든 정보에 접근할 수 있다.

 

3. 날짜/시간 연산


val dateTime= LocalDateTime.of(2025, 12, 31, 23, 30)

println(dateTime.plusDays(1))       // 2026-01-01T23:30
println(dateTime.plusHours(2))      // 2026-01-01T01:30
println(dateTime.plusMonths(2))     // 2026-02-28T23:30

- LocalDate + LocalTime 연산을 모두 지원한다.

 

4. 비교 연산


val dateTime1 = LocalDateTime.of(2025, 1, 1, 10, 0)
val dateTime2 = LocalDateTime.of(2025, 1, 1, 12, 0)

println(dateTime1.isBefore(dateTime2)) // true
println(dateTime1.isAfter(dateTime2))  // false
println(dateTime1.isEqual(dateTime2))  // falㅅ

- dateTime1 < dateTime2 와 같이 비교 연산자도 사용가능하다.

 

5. 날짜/시간 분리


val dateTime = LocalDateTime.of(2025, 12, 4, 14, 30)

val date = dateTime.toLocalDate()  // LocalDate
val time = dateTime.toLocalTime()  // LocalTime

 

6. LocalDateTime + Zone 정보


LocalDateTime은 “날짜 + 시간” 정보만 가지며 타임존이 없는 로컬 시간이다.

특정 지역의 실제 시각으로 변환하려면 ZoneId 를 적용해야한다.

val dateTime = LocalDateTime.of(2025, 12, 4, 14, 30)

val zdt = dateTime.atZone(ZoneId.of("Asia/Seoul"))
println(zdt) // 2025-12-04T14:30+09:00

- atZone(): LocalDateTime에 시간대(ZoneId) 를 적용해 LocalDateTime 를 생성한다.

 

✔ 타임존을 포함한 현재 시각 가져오기

val now= LocalDateTime.now(ZoneId.of("Asia/Seoul"))

특정 타임존 기준의 LocalDateTime을 얻고 싶을 때 사용한다.

반응형

'학습 기록 > kotlin' 카테고리의 다른 글

[Kotlin] 동시성 프로그래밍 with Coroutine  (0) 2026.02.16
[Kotlin] LocalDate/LocalTime/LocalDateTime <-> String 변환  (0) 2025.12.04
[Kotlin] LocalTime (java.time)  (0) 2025.12.04
[Kotlin] LocalDate (java.time)  (1) 2025.12.04
[Kotlin] groupBy, groupingBy  (0) 2025.12.03
'학습 기록/kotlin' 카테고리의 다른 글
  • [Kotlin] 동시성 프로그래밍 with Coroutine
  • [Kotlin] LocalDate/LocalTime/LocalDateTime <-> String 변환
  • [Kotlin] LocalTime (java.time)
  • [Kotlin] LocalDate (java.time)
BaekCCI
BaekCCI
  • BaekCCI
    BaekLog
    BaekCCI
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 학습 기록
        • 안드로이드
        • 문제풀이
        • kotlin
      • 우아한 테크코스
      • 백씨의 하루
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    백준
    우아한테크코스
    Android
    프로그래머스
    i/o extended android
    gdg korea
    우테코
    Kotlin
    Algorithm
    소프티어
    코틀린
    Java
    알고리즘
    androiddeveloper
    softeer
  • 최근 댓글

  • 최근 글

  • 반응형
  • hELLO· Designed By정상우.v4.10.6
BaekCCI
[Kotlin] LocalDateTime (java.time)
상단으로

티스토리툴바