比较两个time.Time对象以查看它们是否在同一日历日的最佳方法是什么?
我看着使用,t.Truncate()但它只能截断几个小时.我知道我可以使用t.GetDate()哪个是直截了当的,但仍然需要比我认为必要的更多代码行.
通过对年,月和日进行单独的方法调用来解析日期组件的时间三次是低效的.对所有三个日期组件使用单个方法调用.从我的基准测试来看,它快了近三倍.例如,
import "time"
func DateEqual(date1, date2 time.Time) bool {
y1, m1, d1 := date1.Date()
y2, m2, d2 := date2.Date()
return y1 == y2 && m1 == m2 && d1 == d2
}
Run Code Online (Sandbox Code Playgroud)
if a.Day() == b.Day() && a.Month() == b.Month() && a.Year() == b.Year() {
// same date
}
Run Code Online (Sandbox Code Playgroud)