我正在尝试获取给定月份的第一个星期一。
我想出的最好方法是在前7天循环浏览,然后在返回时返回.Weekday() == "Monday"。有一个更好的方法吗?
.Weekday() == "Monday"
通过查看时间的.Weekday(),您可以计算第一个星期一。
package main import ( "fmt" "time" ) // FirstMonday returns the day of the first Monday in the given month. func FirstMonday(year int, month time.Month) int { t := time.Date(year, month, 1, 0, 0, 0, 0, time.UTC) return (8-int(t.Weekday()))%7 + 1 } func main() { for m := 1; m <= 12; m++ { fmt.Println(m, FirstMonday(2013, time.Month(m))) } }