创建新的变量 C#

本文关键字:变量 创建 | 更新日期: 2023-09-27 18:34:28

假设我想使用

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

我应该创建一个名为 strSplit 的字符串变量还是继续使用 str。拆分[' ']。元素在(0(?是否存在性能问题?

创建新的变量 C#

内存很便宜。真的很便宜。

CPU 周期也是如此。

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

为了便于实践,请将其存储在变量中。使用的内存将是无关紧要的,你的代码会更干净、更高效(即使你没有看到它!

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

var result = str.Split(" ");
foreach (var splitValue in result)
{
    // do something with splitValue
}