去时间比较

去时间比较,第1张

时间比较

有一种

.Equal()
比较日期的方法:

if !res.Equal(expect) {   ...

引用文档:

请注意,Go
==运算符不仅会比较即时时间,还会比较“位置”和单调时钟读数。因此,在不首先确保已为所有值设置相同的“位置”(不可以通过使用UTC或“本地”方法实现)并且已将单调时钟读数剥离的情况下,不应将“时间”值用作映射或数据库键。设置t
= t.Round(0)通常,首选t.Equal(u)而不是t ==
u,因为t.Equal使用可用的最精确比较,并且仅当其参数之一具有单调时钟读数时才正确处理这种情况。

如果查看该

time.Time
结构的代码,则可以看到该结构具有三个私有字段

type Time struct {    ...    wall uint64    ext  int64    ...    loc *Location}

关于这些字段的注释清楚地表明,根据

Time
构造的方式,两个
Time
描述相同时间点的字段可能具有不同的值。

运行

res == expect
比较这些内部字段的值,
运行
res.Equal(expect)
尝试做您期望的事情。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5170711.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存