gpt4 book ai didi

c# - 比较日期时间的最可靠方法?

转载 作者:太空宇宙 更新时间:2023-11-03 20:36:46 25 4
gpt4 key购买 nike

我主要在我的工作场所使用 Delphi,在一些涉及比较日期时间的彻底单元测试中,我发现在比较计算日期等时,使用 equals 运算符的直接比较不够可靠。因此我开始使用的规则 CompareDateTimeSameDateTime这是 Delphi 中用于日期比较的内置函数。

在 C# 中,出于习惯,我使用标准运算符比较日期/时间 =<> .我们有类似的功能,如 DateTime.CompareDateTime.Equals对于日期时间比较,因此就准确性和可靠性而言,我真的应该改用内置函数吗?

他们会给我一个比使用运算符更准确的比较吗?

最佳答案

鉴于你的日期/时间是计算出来的,你最好计算时间之间的差异,这会给你一个 TimeSpan .

TimeSpan travelTime = arrival - departure;

然后您可以检查这是否小于您允许的公差。

if (Math.Abs(travelTime.TotalMilliseconds) < tolerance)
{
// times are equal.
}

这类似于您需要对浮点值采用的方法,但独立于浮点值,因为在这种情况下,不准确性源于您的数据,而不是它在内存中的表示方式。

关于c# - 比较日期时间的最可靠方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4767656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com