我想找一个月的第二个和第四个星期六来查看银行假日。我现在加了星期天的支票。目前,这是我的功能在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)
}