C#代码运行速度很慢

时间:2013-09-09 20:13:49

标签: c# c#-4.0

Hy,我有一个带有10000个索引的int [] x,并且我使用这样的代码将每个值放在文本框中的换行符中,但是我的代码至少需要几个minuts来填充文本框,是否有更快捷的方法来做同样的事情?

for ( int x = 0; X < 10000; x++)
{
    textBox1.Text += randomNumber[x] + Environment.NewLine;
}

3 个答案:

答案 0 :(得分:8)

是的,请使用字符串构建器来执行以下操作:

StringBuilder builder = new StringBuilder(10000); 
for (int x = 0; x < 10000; x++)
{
    builder.AppendLine(randomNumber[x]);
}
textBox1.Text = builder.ToString();

否则你会'咳出一根绳子',这是新程序员常见的陷阱。 Here是一篇来自Joel Spolsky的精彩博客文章,描述了字符串和不变性的常见缺陷。

答案 1 :(得分:2)

目前尚不清楚randomNumber集合大小是否为10000,但如果是,则可以使用String.Join方法:

textBox1.Text = string.Join(Environment.NewLine, randomNumber);

无论如何它将在内部使用StringBuilder,但最好阅读。

答案 2 :(得分:0)

首先构建字符串,然后将其值放在文本框中(而不是将文本附加到文本框10,000次)。