创建新变量c#

时间:2014-12-17 00:18:22

标签: c# variables

假设我想使用

str.Split[' '].ElementAt(0) 10 times in my method.

我应该创建一个名为strSplit的字符串变量,还是继续使用str.Split [''] .ElementAt(0)?是否存在性能问题?

2 个答案:

答案 0 :(得分:1)

使用整个返回的数组,而不是每次只使用第一个元素(除非你真的只想要第一个元素,而不是其他元素):

var result = str.Split(" ");

foreach (var splitValue in result)
{
    // do something with splitValue
}

答案 1 :(得分:1)

记忆力很便宜。 真的便宜。

CPU周期也是如此。

您当前的方法将消耗更少的内存(每次调用Split时没有GC,但您没有存储结果) tiny 。但它会消耗更多的CPU周期,特别是因为GC必须收集Split创建的所有临时变量。实际上,它并不重要。你不会看到性能差异。

为了做好,请将其存储在变量中。使用的内存将是无关紧要的,您的代码将更清洁,更高效(即使您没有看到它!)