GON*_*ale 5 .net c# optimization performance
我能想到的最有效和最典型的解决方案是:
var dates = new DateTime[7];
for (int i = 0; i < 7; i++)
dates[i] = DateTime.Now.AddDays(i);
Run Code Online (Sandbox Code Playgroud)
这将在数组中返回七(7)个日期,这是我想要的结果.我认为红宝石可以做这样的事情,只需指定点,但我不记得了.
但是,有更有效的方法吗?或者有没有办法用linq实现这个(可能通过Aggregate方法?),如果有的话,即使它不是最有效的解决方案,我也会很好奇.
理想情况下,它不需要您为所需的"时间"量重新声明任何对象实例,并允许您只指定DateTime.Now一次,并且只需要一次指定数组/列表中的项目数.
谢谢
我会使用Enumerable.Range,这在生成数据序列时非常方便:
var now = DateTime.Now;
var dates = Enumerable.Range(0, 7).Select(n => now.AddDays(n)).ToArray();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
230 次 |
| 最近记录: |