Date Go:仅考虑日期,比较两个时间结构
我正在寻找一种在围棋中实现这一点的干净方法:Date Go:仅考虑日期,比较两个时间结构,date,go,time,Date,Go,Time,我正在寻找一种在围棋中实现这一点的干净方法: package main import( "fmt" t "time" ) func isSameDate() bool { timeA, err := t.Parse("01022006 15:04", "08152016 09:00") timeB, err := t.Parse("01022006 15:04", "08152016 07:30") return timeA.Date == tim
package main
import(
"fmt"
t "time"
)
func isSameDate() bool {
timeA, err := t.Parse("01022006 15:04", "08152016 09:00")
timeB, err := t.Parse("01022006 15:04", "08152016 07:30")
return timeA.Date == timeB.Date // This is C# code but I'm looking for something similar in GO
}
如果返回true则可以调用
timeA.Date()
将其格式化为字符串,并像下面的示例中那样进行比较。不知道有没有更好的办法
func isSameDate() bool {
timeA, _ := t.Parse("01022006 15:04", "08152016 09:00")
timeB, _ := t.Parse("01022006 15:04", "08152016 07:30")
ay, am, ad := timeA.Date()
a := fmt.Sprintf("%d%d%d", ay, am, ad)
by, bm, bd := timeB.Date()
b := fmt.Sprintf("%d%d%d", by, bm, bd)
return a == b
}
可以调用
timeA.Date()。不知道有没有更好的办法
func isSameDate() bool {
timeA, _ := t.Parse("01022006 15:04", "08152016 09:00")
timeB, _ := t.Parse("01022006 15:04", "08152016 07:30")
ay, am, ad := timeA.Date()
a := fmt.Sprintf("%d%d%d", ay, am, ad)
by, bm, bd := timeB.Date()
b := fmt.Sprintf("%d%d%d", by, bm, bd)
return a == b
}
如果你使用时间包中的时间,你可以把它缩短到日期
因此,使用参数24*time.Hour
截短这两个时间,以获取每个时间的日期并与时间进行比较
以下是示例:如果您使用时间包中的,则可以将其缩减到日期
因此,使用参数24*time.Hour
截短这两个时间,以获取每个时间的日期并与时间进行比较
以下是示例:@RAFJR看看上面的Verrans答案。“这是正确的方法。”拉夫看看上面维兰斯的回答。这是正确的方法。