![]() |
1
1
很难想象这种情况会有很大的不同,但Reflector显示
比较的核心逻辑
到的核心逻辑
创建新的
编辑:
|
![]() |
2
5
测量它-写一个测试程序,看看哪个花费更少的时间。 |
![]() |
3
3
我相信datetime操作返回新的datetime结构,所以您将以任何方式创建新的实例。 http://msdn.microsoft.com/en-us/library/system.datetime.aspx |
![]() |
4
3
除非你在做一些财务处理,否则我更担心的是可读性而不是性能。只有在像这里这样的地方开始担心性能,如果它是一个被证实的瓶颈。 |
![]() |
5
2
因为他们最终都做了相同的事情,所以没有什么区别。 如果你在寻找效率,只需使用滴答。在完成任何数学运算之前,datetime中的所有(我见过的)调用最终都会转换为tick。 |
![]() |
6
1
这是一个有效的测试程序,实现了算法,以便实际比较(尽管它们仍然需要工作):
输出(我加了逗号): new DateTime: 545,307,375 .AddDays: 180,071,512 这些结果对我来说似乎很清楚,但老实说,我认为它们会更接近。 |
![]() |
7
0
我同意马克的观点。自己测试两种方法,看看哪种方法更快。使用秒表类可以精确计算每个方法运行所需的时间。我的第一个猜测是,由于两者最终都创造了新的结构,任何速度差都可以忽略不计。另外,由于只生成一个月的日期(最多31天),我认为这两种方法都不会比另一种慢得多。也许是您生成了数千或数百万个日期,这会有所不同,但对于31个日期,这可能是过早的优化。 |