MST

星途 面试题库

面试题:Kotlin 处理两个日期之间的工作日天数

给定两个 Kotlin 的日期对象(如 LocalDate 类型),要求编写一个函数来计算这两个日期之间的工作日(周一至周五)天数。假设日期范围合法且日期顺序正确,说明实现算法的思路并提供完整的 Kotlin 代码。
12.4万 热度难度
编程语言Kotlin

知识考点

AI 面试

面试题答案

一键面试

算法思路

  1. 遍历两个日期之间的每一天。
  2. 检查每一天是星期几,如果是周一到周五,则工作日天数加一。

Kotlin 代码

import java.time.DayOfWeek
import java.time.LocalDate

fun countWorkdays(startDate: LocalDate, endDate: LocalDate): Int {
    var workdayCount = 0
    var currentDate = startDate
    while (currentDate <= endDate) {
        if (currentDate.dayOfWeek in DayOfWeek.MONDAY..DayOfWeek.FRIDAY) {
            workdayCount++
        }
        currentDate = currentDate.plusDays(1)
    }
    return workdayCount
}