我想找一个月的第二个和第四个星期六来检查银行假期。我现在已经添加了周日的支票。目前这是我的函数在 Go 中以日期作为输入的外观
func IsHoliday(date time.Time) bool {
return date.Weekday() == time.Sunday
}
我想找一个月的第二个和第四个星期六来检查银行假期。我现在已经添加了周日的支票。目前这是我的函数在 Go 中以日期作为输入的外观
func IsHoliday(date time.Time) bool {
return date.Weekday() == time.Sunday
}
这就是实现函数查找备用星期六的方式。它找到第一个星期六日期,然后将输入日期与第二个和第四个星期六进行比较。
func isAlternateSaturday(date time.Time) bool {
firstDateOfMonth := time.Date(date.Year(), date.Month(), 1, 0, 0, 0, 0, nil)
firstSaturday := (6-int(firstDateOfMonth.Weekday())) + firstDateOfMonth.Day()
return (date.Day() == firstSaturday + 7) || (date.Day() == firstSaturday + 21)
}
然后将其与主要的 IsHoliday 功能集成:
func IsHoliday(date time.Time) bool {
return date.Weekday() == time.Sunday || isAlternateSaturday(date)
}