Kotlin:
미래나 과거의 날짜 계산하기
How to (어떻게 하나요?)
Kotlin을 사용해 날짜를 계산하는 예제입니다. Java의 LocalDateTime
과 Period
클래스를 활용합니다.
import java.time.LocalDateTime
import java.time.Period
fun main() {
val today = LocalDateTime.now()
println("오늘: $today")
val tenDaysLater = today.plusDays(10)
println("10일 후: $tenDaysLater")
val threeWeeksEarlier = today.minusWeeks(3)
println("3주 전: $threeWeeksEarlier")
val period = Period.of(1, 2, 15) // 1년 2개월 15일
val customDate = today.plus(period)
println("1년 2개월 15일 후: $customDate")
}
출력 결과:
오늘: 2023-04-11T16:40:42.123
10일 후: 2023-04-21T16:40:42.123
3주 전: 2023-03-21T16:40:42.123
1년 2개월 15일 후: 2024-06-26T16:40:42.123
Deep Dive (심도 있는 정보)
캘린더 계산은 컴퓨터 과학과 인류 역사 깊숙이 관련이 있습니다. 예로, 율리우스력과 그레고리력의 전환은 날짜 계산 방식에 영향을 미쳤습니다. Kotlin에서 날짜를 계산할 때 Java의 java.time
패키지(LocalDate
, LocalDateTime
, Period
, Duration
등)를 활용하는 것이 일반적입니다. java.util.Date
와 Calendar
는 오래되었고 문제가 많아서 피하는 것이 좋습니다. LocalDateTime
클래스는 시간대를 고려하지 않는 날짜와 시간을 나타냅니다. 전 세계 사용자를 위해서는 ZonedDateTime
을 사용해야 할 경우도 있습니다.