哪个对性能最好

本文关键字:性能 | 更新日期: 2023-09-27 18:07:20

有人能给我解释一下吗?哪一个对性能更好

    foreach (DataRow row in prodStockLevels.Rows)
    {
       string stock = row["stpt_Stock"].ToString();
       textbox.text = stock;
    }

    foreach (DataRow row in prodStockLevels.Rows)
    {
       textbox.text = row["stpt_Stock"].ToString();
    }

即使数据表很大,也会有很大的区别吗?只是想知道,如果数据是直接传递的,它是更好的性能。

哪个对性能最好

在效率上没有明显的区别——我怀疑它甚至是可测量的,如果它存在

你赋值给一个局部变量的事实基本上是无关紧要的。表达式row["stpt_Stock"].ToString()的值将以任何一种方式在堆栈上结束。唯一的区别是堆栈槽是否有名称。

在调试器中,它可能会产生微小但几乎可测量的差异,因为它可能有一些额外的含义-但是当然不足以担心。

我想我会更担心的事实是,你反复赋值给相同的textBox.Text属性-只有最后一个是实际相关的。你最好只是获取最后

无差异。编译后的代码可能完全相同。

无差异。
以下代码将比这两个都快:

 textbox.text = prodStockLevels.Rows.Last()["stpt_Stock"].ToString();