2 回答

TA貢獻(xiàn)1773條經(jīng)驗(yàn) 獲得超3個(gè)贊
如果您用相同的位數(shù)表示兩個(gè)日期(所有年、月和日期值的寬度相同),并且由于字段的順序是從高優(yōu)先級(jí)到低優(yōu)先級(jí)(年 -> 月 -> 日),這將始終是正確的(字符串比較也是從左到右進(jìn)行的)。
注意:當(dāng)年份達(dá)到10000
時(shí),這種比較可能會(huì)給出錯(cuò)誤的結(jié)果,因?yàn)榈谝粋€(gè)假設(shè)將不成立(所有年份值的寬度相同)。如果要處理 9999 之后的年份,則必須用 5 位數(shù)字表示年份,因此2021
必須寫(xiě)為02021
.

TA貢獻(xiàn)2036條經(jīng)驗(yàn) 獲得超8個(gè)贊
我認(rèn)為你會(huì)得到更可預(yù)測(cè)的結(jié)果,使用 unix 格式的時(shí)間,但你現(xiàn)在這樣做的方式更快。
t, _ := time.Parse("2006-01-02", "2021-01-01")
date := t.Unix()
today := time.Now().Unix()
switch {
case date == today:
fmt.Println("Equal")
case date < today:
fmt.Println("Less")
case date > today:
fmt.Println("Greater")
}
- 2 回答
- 0 關(guān)注
- 253 瀏覽
添加回答
舉報(bào)