【发布时间】:2011-01-09 06:59:56
【问题描述】:
我最终得到了很多这样的代码:
List<string> dates = someMethodCall();
foreach (string dateStr in dates) { }
我通常声明我正在迭代的对象,然后在foreach 条件中使用它,因为担心循环的每次迭代都会发生someMethodCall()。是这样吗?我更愿意这样做:
foreach (string dateStr in someMethodCall()) { }
但我只想在someMethodCall() 只发生一次并且其结果为每次后续迭代缓存的情况下才这样做。
【问题讨论】:
标签: c# optimization caching loops foreach