gpt4 book ai didi

go - 如何计算Golang中的工作日数

转载 作者:IT王子 更新时间:2023-10-29 02:15:50 24 4
gpt4 key购买 nike

到目前为止,我有这个来计算使用 http://golang.org/pkg/time/ 的天数但我不知道如何排除周末,只计算工作日。

package main

import (
"fmt"
"time"
)

func main() {
t := time.Now()
f := time.Date(2015, time.August, 21, 24, 0, 0, 0, time.UTC)
diff := f.Sub(t)

// convert diff to days
days := int(diff.Hours() / 24)

fmt.Printf("days %d\n", days)
}

最佳答案

这是一个简单的小解决方案。

days := 0
for {
if (t.Equal(f)) {
return days
}
if (t.Weekday() != time.Saturday && t.Weekday() != time.Sunday) {
days++
}
t = t.Add(time.Hour*24)
}

您可能不想使用原始的 t 变量,但要保持示例简单。我循环直到 t 等于 f,如果它们相等,我返回我的天数。如果不是,我会检查以确保它是工作日,如果是,则增加我的天数。我无条件地在我的开始时间上增加一天。

关于go - 如何计算Golang中的工作日数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31327124/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com