首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

下面代码中,效率上的差异需要考虑么?该如何解决

2012-03-21 
下面代码中,效率上的差异需要考虑么?foreach( DataRow row in tbl.rows){action1(row)action2(row)actio

下面代码中,效率上的差异需要考虑么?
foreach( DataRow row in tbl.rows)
{
  action1(row);
  action2(row);
  action3(row);
}

foreach( DataRow row in tbl.rows)
{
  action1(row);
}
foreach( DataRow row in tbl.rows)
{
  action2(row);
}
foreach( DataRow row in tbl.rows)
{
  action3(row);
}

这两种写法肯定会有效率上的差异,
在实际项目中,是否需要考虑优化这样的代码?


  不考虑代码的简洁性,就单纯的讨论执行效率的差异。



[解决办法]
foreach比起for来,效率还是有差距的. 上面和下面 就是一次循环和3次循环的差别
[解决办法]
能优化就有优化。
遍历又不是不需要时间的...
[解决办法]
对效率要求不高的程序可以不优化,但对于一个完美主义者而言,是不允许这样的代码出现的。
[解决办法]
当然要优化,无论从代码简洁还是性能来说,都不应该用第二种方法
[解决办法]
不管怎么样..都不应该出现第二种方法的代码
[解决办法]
那就无所谓了
能优化尽量优化,毕竟循环的时间不会太久的

探讨
引用:
当然要优化,无论从代码简洁还是性能来说,都不应该用第二种方法


几个循环是遍布在几个不同的类中的,通过Decorator模式串连到一起执行的。
如果要放到一个循环里,就需要打破原来的程序结构。改动比较大。而且去掉Decorator模式,对现有系统也不是太合适,两难!!

[解决办法]
差距肯定有的,
但是,简洁也是很重要的。
[解决办法]

无论是从效率方面说,还是简洁方面讲,都应该使用第一种方法.
循环式需要时间的,使用第一种方法的效率要高于第二种
[解决办法]
优化是必须的 美观也是要的 注释是少不了的
[解决办法]
探讨
引用:
当然要优化,无论从代码简洁还是性能来说,都不应该用第二种方法


几个循环是遍布在几个不同的类中的,通过Decorator模式串连到一起执行的。
如果要放到一个循环里,就需要打破原来的程序结构。改动比较大。而且去掉Decorator模式,对现有系统也不是太合适,两难!!

热点排行