[kotlin] 코틀린 확장 함수를 사용하여 날짜와 시간을 다루는 방법은?
import java.time.LocalDate
fun LocalDate.isWeekend(): Boolean {
return this.dayOfWeek.value in 6..7
}
fun LocalDate.addBusinessDays(days: Long): LocalDate {
var resultDate = this
var addedDays = 0L
while (addedDays < days) {
resultDate = resultDate.plusDays(1)
if (resultDate.isWorkingDay()) {
addedDays++
}
}
return resultDate
}
위의 예제에서는 LocalDate
클래스에 두 개의 확장 함수를 추가했습니다. 첫 번째 함수는 isWeekend()
로, 주말인지 여부를 확인합니다. 두 번째 함수는 addBusinessDays(days: Long)
로, 주말을 제외한 영업일을 기준으로 지정한 날짜 수를 더합니다.
fun main() {
val date = LocalDate.of(2023, 3, 10)
println("Is weekend: ${date.isWeekend()}")
println("10 business days from now: ${date.addBusinessDays(10)}")
}
위의 main
함수에서는 이러한 확장 함수를 활용하는 방법을 보여줍니다. 이제 여러분도 코틀린에서 확장 함수를 사용하여 날짜와 시간을 쉽게 다룰 수 있을 것입니다.